home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / bin_c / compile_to_c4.c < prev    next >
C/C++ Source or Header  |  2000-03-25  |  102KB  |  4,515 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.76Beta#1)--
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                  http://SmallEiffel.loria.fr/                --
  7. */
  8. #include "compile_to_c.h"
  9.  
  10.  
  11. T0* r306try_to_undefine(T306* C,T0* a1,T0* a2){
  12. T0* R=NULL;
  13. T0* _fn2=NULL;
  14. {T68 se_tmp0;
  15. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  16. }
  17. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  18. /*[IF*/
  19. if((_fn2)!=((void*)(NULL))){
  20. X82undefine_in(_fn2,a2);
  21. }
  22. /*FI]*/
  23. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  24. /*]*/
  25. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  26. /*]*/
  27. /*]*/
  28. R=r306try_to_undefine_aux(C,a1,a2);
  29. /*[IF*/
  30. if((R)!=((void*)(NULL))){
  31. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  32. r306merge_header_comments(C,R);
  33. }
  34. else{
  35. r51fatal_undefine(((T51*)a2),a1);
  36. }
  37. /*FI]*/
  38. return R;
  39. }
  40.  
  41.  
  42. void r306check_obsolete(T306* C,T68 a1){
  43. /*[IF*/
  44. if(((/*RF2*/(C)->_obsolete_mark/*24*/))!=((void*)(NULL))){
  45. /*[IF*/
  46. if(!((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/))){
  47. r66add_position(a1);
  48. /*[IRF3.6append*/{T0* b1=((T0*)ms90_19170);
  49. r7append((T7*)(oBC66explanation),b1);
  50. }/*]*/
  51. /*[IRF3.6append*/{T0* b1=(/*RF2*/((T161*)((/*RF2*/(C)->_obsolete_mark/*24*/)))->_to_string/*12*/);
  52. r7append((T7*)(oBC66explanation),b1);
  53. }/*]*/
  54. {T68 se_tmp0;
  55. r66add_position((*(se_tmp0=r306start_position(C),&se_tmp0)));
  56. }
  57. r66print_as_warning((T66*)(oBC13eh));
  58. }
  59. /*FI]*/
  60. }
  61. /*FI]*/
  62. }
  63.  
  64.  
  65. T0* r306to_run_feature(T306* C,T0* a1,T0* a2){
  66. T0* R=NULL;
  67. {T397*n=((T397*)malloc(sizeof(*n))/*52*/);
  68. *n=M397;
  69. r397make(n,a1,a2,(T0*)C);
  70. R=((T0*)n);
  71. }
  72. return R;
  73. }
  74.  
  75.  
  76. void r306error(T68 a1,T0* a2){
  77. r66add_position(a1);
  78. /*[IRF3.6append*/{T0* b1=a2;
  79. r7append((T7*)(oBC66explanation),b1);
  80. }/*]*/
  81. r66print_as_error((T66*)(oBC13eh));
  82. }
  83.  
  84.  
  85. T6 r306is_not_mergeable_with(T306* C,T0* a1){
  86. T6 R=0;
  87. /*[IF*/
  88. {/*AT*/R=(X90result_type(a1))!=((void*)(NULL));
  89. }
  90. /*FI]*/
  91. /*[IF*/
  92. if(R){
  93. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  94. r7append((T7*)(oBC66explanation),b1);
  95. }/*]*/
  96. }
  97. else{
  98. /*[IF*/
  99. if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  100. R=(X90arguments(a1))!=((void*)(NULL));
  101. }
  102. else{
  103. R=(X90arguments(a1))==((void*)(NULL));
  104. }
  105. /*FI]*/
  106. /*[IF*/
  107. if(R){
  108. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  109. r7append((T7*)(oBC66explanation),b1);
  110. }/*]*/
  111. }
  112.  else if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  113. }
  114.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  115. /*[IRF3.6append*/{T0* b1=((T0*)ms90_66660);
  116. r7append((T7*)(oBC66explanation),b1);
  117. }/*]*/
  118. R=1;
  119. }
  120. /*FI]*/
  121. }
  122. /*FI]*/
  123. r306merge_header_comments(C,a1);
  124. return R;
  125. }
  126.  
  127.  
  128. void r306set_header_comment(T306* C,T0* a1){
  129. /*[IF*/
  130. if(((a1)!=((void*)(NULL)))&&((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)>(1))){
  131. (/*SFN*/C->_end_comment)=a1;
  132. }
  133. /*FI]*/
  134. }
  135.  
  136.  
  137. void r306make_routine(T306* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  138. /*[IRF3.3make_e_feature*/((((T306*)(C)))->_names)=(a1);
  139. /*]*/
  140. (/*SFN*/C->_header_comment)=a4;
  141. (/*SFN*/C->_arguments)=a2;
  142. (/*SFN*/C->_obsolete_mark)=a3;
  143. (/*SFN*/C->_require_assertion)=a5;
  144. }
  145.  
  146.  
  147. void r306make(T306* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){
  148. r306make_routine(C,a1,a2,a3,a4,a5);
  149. (/*SFN*/C->_local_vars)=a6;
  150. (/*SFN*/C->_routine_body)=a7;
  151. (/*SFN*/C->_use_current_state)=9;
  152. }
  153.  
  154.  
  155. void r306add_into(T306* C,T0* a1){
  156. T0* _fn=NULL;
  157. T2 _i=0;
  158. {T68 se_tmp0;
  159. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  160. }
  161. _i=1;
  162. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  163. {
  164. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  165. /*[IF*/
  166. if(r91has(((T91*)a1),X82to_key(_fn))){
  167. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  168. {T68 se_tmp0;
  169. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  170. }
  171. {T68 se_tmp0;
  172. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  173. }
  174. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  175. r7append((T7*)(oBC66explanation),b1);
  176. }/*]*/
  177. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  178. r7append((T7*)(oBC66explanation),b1);
  179. }/*]*/
  180. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  181. r7append((T7*)(oBC66explanation),b1);
  182. }/*]*/
  183. r66print_as_error((T66*)(oBC13eh));
  184. }
  185. else{
  186. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  187. }
  188. /*FI]*/
  189. _i=(_i)+(1);
  190. }
  191. }
  192.  
  193.  
  194. T6 r306can_hide(T306* C,T0* a1,T0* a2){
  195. T6 R=0;
  196. /*[IF*/
  197. if((/*(IRF4.1result_type*/NULL/*)*/)!=((void*)(X90result_type(a1)))){
  198. /*[IF*/
  199. {/*AT*/{T68 se_tmp0;
  200. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  201. }
  202. {T68 se_tmp0;
  203. r306error((*(se_tmp0=r306start_position(C),&se_tmp0)),((T0*)ms90_64152));
  204. }
  205. }
  206. /*FI]*/
  207. }
  208. /*FI]*/
  209. /*[IF*/
  210. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(X90arguments(a1)))){
  211. /*[IF*/
  212. if((((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL)))||((X90arguments(a1))==((void*)(NULL)))){
  213. {T68 se_tmp0;
  214. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  215. }
  216. {T68 se_tmp0;
  217. r306error((*(se_tmp0=r306start_position(C),&se_tmp0)),((T0*)ms90_82612));
  218. }
  219. }
  220.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  221. {T68 se_tmp0;
  222. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  223. }
  224. {T68 se_tmp0;
  225. r306error((*(se_tmp0=r306start_position(C),&se_tmp0)),((T0*)ms90_66660));
  226. }
  227. }
  228. /*FI]*/
  229. }
  230. /*FI]*/
  231. /*[IF*/
  232. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  233. /*[IF*/
  234. /*AF*//*AE*/
  235. /*FI]*/
  236. }
  237. /*FI]*/
  238. /*[IF*/
  239. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  240. /*[IF*/
  241. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(NULL))){
  242. /*[IF*/
  243. if(!(r178is_a_in((T178*)((/*RF2*/(C)->_arguments/*20*/)),X90arguments(a1),a2))){
  244. {T68 se_tmp0;
  245. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  246. }
  247. {T68 se_tmp0;
  248. r66add_position((*(se_tmp0=r306start_position(C),&se_tmp0)));
  249. }
  250. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  251. r7append((T7*)(oBC66explanation),b1);
  252. }/*]*/
  253. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  254. r7append((T7*)(oBC66explanation),b1);
  255. }/*]*/
  256. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  257. r7append((T7*)(oBC66explanation),b1);
  258. }/*]*/
  259. r66print_as_error((T66*)(oBC13eh));
  260. }
  261. /*FI]*/
  262. }
  263. /*FI]*/
  264. }
  265. /*FI]*/
  266. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  267. /*[IF*/
  268. if(R){
  269. r306merge_header_comments(C,a1);
  270. }
  271. /*FI]*/
  272. return R;
  273. }
  274.  
  275.  
  276. void r306merge_header_comments(T306* C,T0* a1){
  277. /*[IF*/
  278. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  279. /*[IF*/
  280. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  281. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  282. }
  283.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  284. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  285. }
  286. /*FI]*/
  287. }
  288. /*FI]*/
  289. }
  290.  
  291.  
  292. T68 r306start_position(T306* C){
  293. T68 R={NULL,0};
  294. {T68 se_tmp0;
  295. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  296. }
  297. return R;
  298. }
  299.  
  300.  
  301. void r94make(T94* C,T68 a1,T0* a2){
  302. T0* _fga=NULL;
  303. T2 _i=0;
  304. T2 _rank=0;
  305. (/*SFN*/C->_start_position)=a1;
  306. (/*SFN*/C->_list)=a2;
  307. _i=(/*RF2*/(((T279*)a2))->_upper/*8*/);
  308. while (!((_i)==(0)))
  309. {
  310. _fga=r279item(((T279*)a2),_i);
  311. _rank=r94index_of(C,(/*RF2*/(((T278*)_fga))->_name/*0*/));
  312. /*[IF*/
  313. if((_rank)!=(_i)){
  314. r66add_position(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/((T278*)(r279item(((T279*)a2),_rank)))->_name/*0*/))))->_start_position/*0*/)/*)*/);
  315. r66add_position(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(((T278*)_fga))->_name/*0*/))))->_start_position/*0*/)/*)*/);
  316. r94fatal_error(((T0*)ms94_233442));
  317. }
  318. /*FI]*/
  319. _i=(_i)-(1);
  320. }
  321. }
  322.  
  323.  
  324. void r94fatal_error(T0* a1){
  325. /*[IRF3.6append*/{T0* b1=a1;
  326. r7append((T7*)(oBC66explanation),b1);
  327. }/*]*/
  328. r66print_as_fatal_error((T66*)(oBC13eh));
  329. }
  330.  
  331.  
  332. void r94check_generic_formal_arguments(T94* C){
  333. T2 _i=0;
  334. _i=(/*RF2*/((T279*)((/*RF2*/(C)->_list/*8*/)))->_upper/*8*/);
  335. while (!((_i)==(0)))
  336. {
  337. r278check_generic_formal_arguments((T278*)(r279item((T279*)((/*RF2*/(C)->_list/*8*/)),_i)));
  338. _i=(_i)-(1);
  339. }
  340. }
  341.  
  342.  
  343. T2 r94index_of(T94* C,T0* a1){
  344. T2 R=0;
  345. T0* _to_string=NULL;
  346. _to_string=(/*RF2*/(((T61*)a1))->_to_string/*8*/);
  347. R=(/*RF2*/((T279*)((/*RF2*/(C)->_list/*8*/)))->_upper/*8*/);
  348. while (!(((R)==(0))||((_to_string)==((void*)((/*RF2*/((T61*)((/*RF2*/((T278*)(r279item((T279*)((/*RF2*/(C)->_list/*8*/)),R)))->_name/*0*/)))->_to_string/*8*/))))))
  349. {
  350. R=(R)-(1);
  351. }
  352. return R;
  353. }
  354.  
  355.  
  356. void r95make(T95* C,T0* a1){
  357. {T97*n=((T97*)malloc(sizeof(*n))/*16*/);
  358. *n=M97;
  359. r97with_capacity(n,4,1);
  360. (/*SFN*/C->_list)=((T0*)n);
  361. }
  362. r97add_last((T97*)((/*RF2*/(C)->_list/*0*/)),a1);
  363. }
  364.  
  365.  
  366. void r95get_started(T95* C,T0* a1){
  367. T2 _i=0;
  368. _i=1;
  369. while (!((_i)>((/*RF2*/((T97*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))))
  370. {
  371. r96add_into((T96*)(r97item((T97*)((/*RF2*/(C)->_list/*0*/)),_i)),a1);
  372. _i=(_i)+(1);
  373. }
  374. }
  375.  
  376.  
  377. void r81good_end(T81* C,T0* a1){
  378. /*[IF*/
  379. if(!(r7has_string((T7*)(r44item((T44*)((/*RF2*/(C)->_list/*8*/)),1)),(/*RF2*/(((T61*)a1))->_to_string/*8*/)))){
  380. r66add_position((/*RF2*/(((T61*)a1))->_start_position/*0*/));
  381. r81warning((/*RF2*/(C)->_start_position/*0*/),((T0*)ms81_44172));
  382. }
  383. /*FI]*/
  384. }
  385.  
  386.  
  387. void r81make(T81* C,T68 a1,T0* a2){
  388. (/*SFN*/C->_start_position)=a1;
  389. {T44*n=((T44*)malloc(sizeof(*n))/*20*/);
  390. *n=M44;
  391. r44with_capacity(n,4,1);
  392. (/*SFN*/C->_list)=((T0*)n);
  393. }
  394. r44add_last((T44*)((/*RF2*/(C)->_list/*8*/)),a2);
  395. }
  396.  
  397.  
  398. void r81warning(T68 a1,T0* a2){
  399. r66add_position(a1);
  400. /*[IRF3.6append*/{T0* b1=a2;
  401. r7append((T7*)(oBC66explanation),b1);
  402. }/*]*/
  403. r66print_as_warning((T66*)(oBC13eh));
  404. }
  405.  
  406.  
  407. void r81append(T81* C,T0* a1){
  408. T2 _i=0;
  409. _i=1;
  410. while (!((_i)>((/*RF2*/((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/)))->_upper/*12*/))))
  411. {
  412. /*[IRF3.5add_last*/r44add_last(((T44*)((/*RF2*/(C)->_list/*8*/))),r44item((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/)),_i));
  413. /*]*/
  414. _i=(_i)+(1);
  415. }
  416. }
  417.  
  418.  
  419. T0* r211try_to_undefine_aux(T211* C,T0* a1,T0* a2){
  420. T0* R=NULL;
  421. {T68 se_tmp0;
  422. r66add_position((*(se_tmp0=r211start_position(C),&se_tmp0)));
  423. }
  424. {T68 se_tmp0;
  425. r211error((*(se_tmp0=X82start_position(a1),&se_tmp0)),((T0*)ms200_98784));
  426. }
  427. r51fatal_undefine(((T51*)a2),a1);
  428. return R;
  429. }
  430.  
  431.  
  432. T0* r211try_to_undefine(T211* C,T0* a1,T0* a2){
  433. T0* R=NULL;
  434. T0* _fn2=NULL;
  435. {T68 se_tmp0;
  436. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  437. }
  438. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  439. /*[IF*/
  440. if((_fn2)!=((void*)(NULL))){
  441. X82undefine_in(_fn2,a2);
  442. }
  443. /*FI]*/
  444. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  445. /*]*/
  446. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  447. /*]*/
  448. /*]*/
  449. R=r211try_to_undefine_aux(C,a1,a2);
  450. /*[IF*/
  451. if((R)!=((void*)(NULL))){
  452. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  453. r211merge_header_comments(C,R);
  454. }
  455. else{
  456. r51fatal_undefine(((T51*)a2),a1);
  457. }
  458. /*FI]*/
  459. return R;
  460. }
  461.  
  462.  
  463. void r211check_obsolete(T211* C,T68 a1){
  464. /*[IF*/
  465. /*AF*//*AE*/
  466. /*FI]*/
  467. }
  468.  
  469.  
  470. T0* r211to_run_feature(T211* C,T0* a1,T0* a2){
  471. T0* R=NULL;
  472. T0* _rc=NULL;
  473. _rc=X52run_class(a1);
  474. R=r50at(((T50*)_rc),a2);
  475. if(NULL!=(R)){
  476. switch(((T0*)R)->id){
  477. case 388:
  478. break;
  479. default:
  480. R=NULL;
  481. }
  482. }/*[IF*/
  483. if((R)==((void*)(NULL))){
  484. {T388*n=((T388*)malloc(sizeof(*n))/*36*/);
  485. *n=M388;
  486. r388make(n,a1,a2,(T0*)C);
  487. R=((T0*)n);
  488. }
  489. }
  490. /*FI]*/
  491. return R;
  492. }
  493.  
  494.  
  495. void r211error(T68 a1,T0* a2){
  496. r66add_position(a1);
  497. /*[IRF3.6append*/{T0* b1=a2;
  498. r7append((T7*)(oBC66explanation),b1);
  499. }/*]*/
  500. r66print_as_error((T66*)(oBC13eh));
  501. }
  502.  
  503.  
  504. T6 r211is_not_mergeable_with(T211* C,T0* a1){
  505. T6 R=0;
  506. /*[IF*/
  507. if(((/*RF2*/(C)->_result_type/*20*/))==((void*)(NULL))){
  508. R=(X90result_type(a1))!=((void*)(NULL));
  509. }
  510. else{
  511. R=(X90result_type(a1))==((void*)(NULL));
  512. }
  513. /*FI]*/
  514. /*[IF*/
  515. if(R){
  516. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  517. r7append((T7*)(oBC66explanation),b1);
  518. }/*]*/
  519. }
  520. else{
  521. /*[IF*/
  522. {/*AT*/R=(X90arguments(a1))!=((void*)(NULL));
  523. }
  524. /*FI]*/
  525. /*[IF*/
  526. if(R){
  527. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  528. r7append((T7*)(oBC66explanation),b1);
  529. }/*]*/
  530. }
  531.  else {/*AT*/}
  532. /*FI]*/
  533. }
  534. /*FI]*/
  535. r211merge_header_comments(C,a1);
  536. return R;
  537. }
  538.  
  539.  
  540. void r211make(T211* C,T0* a1,T0* a2,T0* a3){
  541. /*[IRF3.3make_e_feature*/((((T211*)(C)))->_names)=(a1);
  542. /*]*/
  543. (/*SFN*/C->_result_type)=a2;
  544. (/*SFN*/C->_value_mem)=a3;
  545. }
  546.  
  547.  
  548. void r211add_into(T211* C,T0* a1){
  549. T0* _fn=NULL;
  550. T2 _i=0;
  551. {T68 se_tmp0;
  552. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  553. }
  554. _i=1;
  555. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  556. {
  557. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  558. /*[IF*/
  559. if(r91has(((T91*)a1),X82to_key(_fn))){
  560. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  561. {T68 se_tmp0;
  562. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  563. }
  564. {T68 se_tmp0;
  565. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  566. }
  567. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  568. r7append((T7*)(oBC66explanation),b1);
  569. }/*]*/
  570. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  571. r7append((T7*)(oBC66explanation),b1);
  572. }/*]*/
  573. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  574. r7append((T7*)(oBC66explanation),b1);
  575. }/*]*/
  576. r66print_as_error((T66*)(oBC13eh));
  577. }
  578. else{
  579. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  580. }
  581. /*FI]*/
  582. _i=(_i)+(1);
  583. }
  584. }
  585.  
  586.  
  587. T6 r211can_hide(T211* C,T0* a1,T0* a2){
  588. T6 R=0;
  589. /*[IF*/
  590. if(((/*RF2*/(C)->_result_type/*20*/))!=((void*)(X90result_type(a1)))){
  591. /*[IF*/
  592. if((((/*RF2*/(C)->_result_type/*20*/))==((void*)(NULL)))||((X90result_type(a1))==((void*)(NULL)))){
  593. {T68 se_tmp0;
  594. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  595. }
  596. {T68 se_tmp0;
  597. r211error((*(se_tmp0=r211start_position(C),&se_tmp0)),((T0*)ms90_64152));
  598. }
  599. }
  600. /*FI]*/
  601. }
  602. /*FI]*/
  603. /*[IF*/
  604. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X90arguments(a1)))){
  605. /*[IF*/
  606. {/*AT*/{T68 se_tmp0;
  607. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  608. }
  609. {T68 se_tmp0;
  610. r211error((*(se_tmp0=r211start_position(C),&se_tmp0)),((T0*)ms90_82612));
  611. }
  612. }
  613. /*FI]*/
  614. }
  615. /*FI]*/
  616. /*[IF*/
  617. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  618. /*[IF*/
  619. if(((/*RF2*/(C)->_result_type/*20*/))!=((void*)(NULL))){
  620. /*[IF*/
  621. if(!(X52is_a_in((/*RF2*/(C)->_result_type/*20*/),X90result_type(a1),a2))){
  622. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  623. r7append((T7*)(oBC66explanation),b1);
  624. }/*]*/
  625. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  626. r7append((T7*)(oBC66explanation),b1);
  627. }/*]*/
  628. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  629. r7append((T7*)(oBC66explanation),b1);
  630. }/*]*/
  631. r66print_as_error((T66*)(oBC13eh));
  632. }
  633. /*FI]*/
  634. }
  635. /*FI]*/
  636. }
  637. /*FI]*/
  638. /*[IF*/
  639. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  640. /*[IF*/
  641. /*AF*//*AE*/
  642. /*FI]*/
  643. }
  644. /*FI]*/
  645. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  646. /*[IF*/
  647. if(R){
  648. r211merge_header_comments(C,a1);
  649. }
  650. /*FI]*/
  651. return R;
  652. }
  653.  
  654.  
  655. void r211merge_header_comments(T211* C,T0* a1){
  656. /*[IF*/
  657. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  658. /*[IF*/
  659. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  660. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  661. }
  662.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  663. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  664. }
  665. /*FI]*/
  666. }
  667. /*FI]*/
  668. }
  669.  
  670.  
  671. T68 r211start_position(T211* C){
  672. T68 R={NULL,0};
  673. {T68 se_tmp0;
  674. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  675. }
  676. return R;
  677. }
  678.  
  679.  
  680. T0* r198try_to_undefine_aux(T198* C,T0* a1,T0* a2){
  681. T0* R=NULL;
  682. {T68 se_tmp0;
  683. r66add_position((*(se_tmp0=r198start_position(C),&se_tmp0)));
  684. }
  685. {T68 se_tmp0;
  686. r198error((*(se_tmp0=X82start_position(a1),&se_tmp0)),((T0*)ms200_98784));
  687. }
  688. r51fatal_undefine(((T51*)a2),a1);
  689. return R;
  690. }
  691. T0*oBC198counter=NULL;
  692.  
  693.  
  694. T0* r198try_to_undefine(T198* C,T0* a1,T0* a2){
  695. T0* R=NULL;
  696. T0* _fn2=NULL;
  697. {T68 se_tmp0;
  698. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  699. }
  700. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  701. /*[IF*/
  702. if((_fn2)!=((void*)(NULL))){
  703. X82undefine_in(_fn2,a2);
  704. }
  705. /*FI]*/
  706. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  707. /*]*/
  708. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  709. /*]*/
  710. /*]*/
  711. R=r198try_to_undefine_aux(C,a1,a2);
  712. /*[IF*/
  713. if((R)!=((void*)(NULL))){
  714. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  715. r198merge_header_comments(C,R);
  716. }
  717. else{
  718. r51fatal_undefine(((T51*)a2),a1);
  719. }
  720. /*FI]*/
  721. return R;
  722. }
  723.  
  724.  
  725. void r198check_obsolete(T198* C,T68 a1){
  726. /*[IF*/
  727. /*AF*//*AE*/
  728. /*FI]*/
  729. }
  730.  
  731.  
  732. T0* r198to_run_feature(T198* C,T0* a1,T0* a2){
  733. T0* R=NULL;
  734. T0* _rc=NULL;
  735. _rc=X52run_class(a1);
  736. R=r50at(((T50*)_rc),a2);
  737. if(NULL!=(R)){
  738. switch(((T0*)R)->id){
  739. case 388:
  740. break;
  741. default:
  742. R=NULL;
  743. }
  744. }/*[IF*/
  745. if((R)==((void*)(NULL))){
  746. {T388*n=((T388*)malloc(sizeof(*n))/*36*/);
  747. *n=M388;
  748. r388make(n,a1,a2,(T0*)C);
  749. R=((T0*)n);
  750. }
  751. }
  752. /*FI]*/
  753. return R;
  754. }
  755.  
  756.  
  757. void r198error(T68 a1,T0* a2){
  758. r66add_position(a1);
  759. /*[IRF3.6append*/{T0* b1=a2;
  760. r7append((T7*)(oBC66explanation),b1);
  761. }/*]*/
  762. r66print_as_error((T66*)(oBC13eh));
  763. }
  764.  
  765.  
  766. T6 r198is_not_mergeable_with(T198* C,T0* a1){
  767. T6 R=0;
  768. /*[IF*/
  769. if(((/*RF2*/(C)->_result_type/*20*/))==((void*)(NULL))){
  770. R=(X90result_type(a1))!=((void*)(NULL));
  771. }
  772. else{
  773. R=(X90result_type(a1))==((void*)(NULL));
  774. }
  775. /*FI]*/
  776. /*[IF*/
  777. if(R){
  778. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  779. r7append((T7*)(oBC66explanation),b1);
  780. }/*]*/
  781. }
  782. else{
  783. /*[IF*/
  784. {/*AT*/R=(X90arguments(a1))!=((void*)(NULL));
  785. }
  786. /*FI]*/
  787. /*[IF*/
  788. if(R){
  789. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  790. r7append((T7*)(oBC66explanation),b1);
  791. }/*]*/
  792. }
  793.  else {/*AT*/}
  794. /*FI]*/
  795. }
  796. /*FI]*/
  797. r198merge_header_comments(C,a1);
  798. return R;
  799. }
  800.  
  801.  
  802. void r198make(T198* C,T0* a1,T0* a2){
  803. T0* _ic=NULL;
  804. T2 _j=0;
  805. T2 _i=0;
  806. /*[IRF3.3make_e_feature*/((((T198*)(C)))->_names)=(a1);
  807. /*]*/
  808. (/*SFN*/C->_result_type)=a2;
  809. _i=r83count((T83*)((/*RF2*/(C)->_names/*8*/)));
  810. {T201*n=((T201*)malloc(sizeof(*n))/*16*/);
  811. *n=M201;
  812. r201with_capacity(n,_i);
  813. (/*SFN*/C->_values)=((T0*)n);
  814. }
  815. _j=1;
  816. while (!((_i)==(0)))
  817. {
  818. r203increment((T203*)(oBC198counter));
  819. {T68 se_tmp0;
  820. {T165*n=((T165*)malloc(sizeof(*n))/*16*/);
  821. *n=M165;
  822. r165make(n,(/*RF2*/((T203*)(oBC198counter))->_value/*0*/),(*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_j)),&se_tmp0)));
  823. _ic=((T0*)n);
  824. }
  825. }
  826. r201add_last((T201*)((/*RF2*/(C)->_values/*24*/)),_ic);
  827. _j=(_j)+(1);
  828. _i=(_i)-(1);
  829. }
  830. }
  831.  
  832.  
  833. void r198add_into(T198* C,T0* a1){
  834. T0* _fn=NULL;
  835. T2 _i=0;
  836. {T68 se_tmp0;
  837. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  838. }
  839. _i=1;
  840. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  841. {
  842. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  843. /*[IF*/
  844. if(r91has(((T91*)a1),X82to_key(_fn))){
  845. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  846. {T68 se_tmp0;
  847. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  848. }
  849. {T68 se_tmp0;
  850. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  851. }
  852. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  853. r7append((T7*)(oBC66explanation),b1);
  854. }/*]*/
  855. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  856. r7append((T7*)(oBC66explanation),b1);
  857. }/*]*/
  858. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  859. r7append((T7*)(oBC66explanation),b1);
  860. }/*]*/
  861. r66print_as_error((T66*)(oBC13eh));
  862. }
  863. else{
  864. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  865. }
  866. /*FI]*/
  867. _i=(_i)+(1);
  868. }
  869. }
  870.  
  871.  
  872. T6 r198can_hide(T198* C,T0* a1,T0* a2){
  873. T6 R=0;
  874. /*[IF*/
  875. if(((/*RF2*/(C)->_result_type/*20*/))!=((void*)(X90result_type(a1)))){
  876. /*[IF*/
  877. if((((/*RF2*/(C)->_result_type/*20*/))==((void*)(NULL)))||((X90result_type(a1))==((void*)(NULL)))){
  878. {T68 se_tmp0;
  879. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  880. }
  881. {T68 se_tmp0;
  882. r198error((*(se_tmp0=r198start_position(C),&se_tmp0)),((T0*)ms90_64152));
  883. }
  884. }
  885. /*FI]*/
  886. }
  887. /*FI]*/
  888. /*[IF*/
  889. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X90arguments(a1)))){
  890. /*[IF*/
  891. {/*AT*/{T68 se_tmp0;
  892. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  893. }
  894. {T68 se_tmp0;
  895. r198error((*(se_tmp0=r198start_position(C),&se_tmp0)),((T0*)ms90_82612));
  896. }
  897. }
  898. /*FI]*/
  899. }
  900. /*FI]*/
  901. /*[IF*/
  902. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  903. /*[IF*/
  904. if(((/*RF2*/(C)->_result_type/*20*/))!=((void*)(NULL))){
  905. /*[IF*/
  906. if(!(X52is_a_in((/*RF2*/(C)->_result_type/*20*/),X90result_type(a1),a2))){
  907. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  908. r7append((T7*)(oBC66explanation),b1);
  909. }/*]*/
  910. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  911. r7append((T7*)(oBC66explanation),b1);
  912. }/*]*/
  913. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  914. r7append((T7*)(oBC66explanation),b1);
  915. }/*]*/
  916. r66print_as_error((T66*)(oBC13eh));
  917. }
  918. /*FI]*/
  919. }
  920. /*FI]*/
  921. }
  922. /*FI]*/
  923. /*[IF*/
  924. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  925. /*[IF*/
  926. /*AF*//*AE*/
  927. /*FI]*/
  928. }
  929. /*FI]*/
  930. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  931. /*[IF*/
  932. if(R){
  933. r198merge_header_comments(C,a1);
  934. }
  935. /*FI]*/
  936. return R;
  937. }
  938.  
  939.  
  940. void r198merge_header_comments(T198* C,T0* a1){
  941. /*[IF*/
  942. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  943. /*[IF*/
  944. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  945. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  946. }
  947.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  948. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  949. }
  950. /*FI]*/
  951. }
  952. /*FI]*/
  953. }
  954.  
  955.  
  956. T68 r198start_position(T198* C){
  957. T68 R={NULL,0};
  958. {T68 se_tmp0;
  959. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  960. }
  961. return R;
  962. }
  963.  
  964.  
  965. T0* r256generic_list(T256* C){
  966. T0* R=NULL;
  967. /*[IF*/
  968. if(r256is_generic(C)){
  969. R=X52generic_list((/*RF2*/(C)->_run_type/*12*/));
  970. }
  971. else{
  972. r256fatal_error_generic_list(C);
  973. }
  974. /*FI]*/
  975. return R;
  976. }
  977.  
  978.  
  979. T6 r256need_gc_mark_function(T256* C){
  980. T6 R=0;
  981. R=X52need_gc_mark_function((/*RF2*/(C)->_run_type/*12*/));
  982. return R;
  983. }
  984.  
  985.  
  986. T2 r256id(T256* C){
  987. T2 R=0;
  988. R=(/*RF2*/((T50*)(r256run_class(C)))->_id/*4*/);
  989. return R;
  990. }
  991.  
  992.  
  993. void r256cast_to_ref(T256* C){
  994. X52cast_to_ref((/*RF2*/(C)->_run_type/*12*/));
  995. }
  996.  
  997.  
  998. void r256c_header_pass1(T256* C){
  999. X52c_header_pass1((/*RF2*/(C)->_run_type/*12*/));
  1000. }
  1001.  
  1002.  
  1003. void r256just_before_gc_mark_in(T256* C,T0* a1){
  1004. X52just_before_gc_mark_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1005. }
  1006.  
  1007.  
  1008. void r256c_header_pass3(T256* C){
  1009. X52c_header_pass3((/*RF2*/(C)->_run_type/*12*/));
  1010. }
  1011.  
  1012.  
  1013. void r256gc_call_new_in(T256* C,T0* a1){
  1014. r7append(((T7*)a1),((T0*)ms14_990));
  1015. r2append_in(r256id(C),a1);
  1016. r7extend(((T7*)a1),((T3)'\50'));
  1017. r7extend(((T7*)a1),((T3)'\51'));
  1018. }
  1019.  
  1020.  
  1021. T6 r256is_array(T256* C){
  1022. T6 R=0;
  1023. R=X52is_array((/*RF2*/(C)->_run_type/*12*/));
  1024. return R;
  1025. }
  1026.  
  1027.  
  1028. T0* r256base_class(T256* C){
  1029. T0* R=NULL;
  1030. T0* _bcn=NULL;
  1031. _bcn=r256base_class_name(C);
  1032. /*[IF*/
  1033. if((_bcn)!=((void*)(NULL))){
  1034. R=r61base_class(((T61*)_bcn));
  1035. }
  1036. else{
  1037. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  1038. r7append((T7*)(oBC66explanation),b1);
  1039. }/*]*/
  1040. r66add_type((T0*)C,((T0*)ms14_46));
  1041. r66print_as_fatal_error((T66*)(oBC13eh));
  1042. }
  1043. /*FI]*/
  1044. return R;
  1045. }
  1046.  
  1047.  
  1048. T0* r256look_up_for(T256* C,T0* a1,T0* a2){
  1049. T0* R=NULL;
  1050. R=r51look_up_for((T51*)(r256base_class(C)),a1,a2);
  1051. return R;
  1052. }
  1053.  
  1054.  
  1055. T2 r256c_sizeof(T256* C){
  1056. T2 R=0;
  1057. R=X52c_sizeof((/*RF2*/(C)->_run_type/*12*/));
  1058. return R;
  1059. }
  1060.  
  1061.  
  1062. T6 r256has_creation(T256* C,T0* a1){
  1063. T6 R=0;
  1064. R=X52has_creation((/*RF2*/(C)->_run_type/*12*/),a1);
  1065. return R;
  1066. }
  1067.  
  1068.  
  1069. T6 r256need_c_struct(T256* C){
  1070. T6 R=0;
  1071. R=X52need_c_struct((/*RF2*/(C)->_run_type/*12*/));
  1072. return R;
  1073. }
  1074.  
  1075.  
  1076. void r256mapping_cast(T256* C){
  1077. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_15456)))))->_count)=(0);
  1078. /*]*/
  1079. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\50'));
  1080. r256c_type_for_target_in(C,((T0*)ms52_15456));
  1081. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\51'));
  1082. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_15456));
  1083. /*]*/
  1084. }
  1085.  
  1086.  
  1087. T0* r256actual_reference(T256* C,T0* a1){
  1088. T0* R=NULL;
  1089. R=X52actual_reference((/*RF2*/(C)->_run_type/*12*/),a1);
  1090. return R;
  1091. }
  1092.  
  1093.  
  1094. T6 r256is_a_in(T256* C,T0* a1,T0* a2){
  1095. T6 R=0;
  1096. T0* _ct=NULL;
  1097. T0* _t2=NULL;
  1098. T0* _t1=NULL;
  1099. /*[IF*/
  1100. if((r256written_mark())==((void*)(X52written_mark(a1)))){
  1101. R=1;
  1102. }
  1103. else{
  1104. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  1105. _t1=r256to_runnable(C,_ct);
  1106. _t2=X52to_runnable(a1,_ct);
  1107. /*[IF*/
  1108. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  1109. R=1;
  1110. }
  1111. else{
  1112. R=X52is_a(_t1,_t2);
  1113. }
  1114. /*FI]*/
  1115. }
  1116. /*FI]*/
  1117. return R;
  1118. }
  1119.  
  1120.  
  1121. T6 r256is_native_array(T256* C){
  1122. T6 R=0;
  1123. T0* _tna=NULL;
  1124. _tna=NULL;
  1125. R=(_tna)!=((void*)(NULL));
  1126. return R;
  1127. }
  1128.  
  1129.  
  1130. T6 r256is_boolean(T256* C){
  1131. T6 R=0;
  1132. R=X52is_boolean((/*RF2*/(C)->_run_type/*12*/));
  1133. return R;
  1134. }
  1135.  
  1136.  
  1137. T6 r256is_a(T256* C,T0* a1){
  1138. T6 R=0;
  1139. /*[IF*/
  1140. if(X52is_like_current(a1)){
  1141. R=1;
  1142. }
  1143. else{
  1144. R=X52is_a((/*RF2*/(C)->_run_type/*12*/),a1);
  1145. }
  1146. /*FI]*/
  1147. return R;
  1148. }
  1149.  
  1150.  
  1151. T6 r256is_generic(T256* C){
  1152. T6 R=0;
  1153. R=X52is_generic((/*RF2*/(C)->_run_type/*12*/));
  1154. return R;
  1155. }
  1156.  
  1157.  
  1158. T6 r256is_reference(T256* C){
  1159. T6 R=0;
  1160. R=X52is_reference((/*RF2*/(C)->_run_type/*12*/));
  1161. return R;
  1162. }
  1163.  
  1164.  
  1165. T6 r256is_real(T256* C){
  1166. T6 R=0;
  1167. R=X52is_real((/*RF2*/(C)->_run_type/*12*/));
  1168. return R;
  1169. }
  1170.  
  1171.  
  1172. T6 r256is_user_expanded(T256* C){
  1173. T6 R=0;
  1174. R=X52is_user_expanded((/*RF2*/(C)->_run_type/*12*/));
  1175. return R;
  1176. }
  1177.  
  1178.  
  1179. T6 r256is_integer(T256* C){
  1180. T6 R=0;
  1181. R=X52is_integer((/*RF2*/(C)->_run_type/*12*/));
  1182. return R;
  1183. }
  1184.  
  1185.  
  1186. T6 r256is_any(T256* C){
  1187. T6 R=0;
  1188. R=X52is_any((/*RF2*/(C)->_run_type/*12*/));
  1189. return R;
  1190. }
  1191.  
  1192.  
  1193. void r256fatal_error_generic_list(T256* C){
  1194. r66add_type((T0*)C,((T0*)ms52_28899));
  1195. r66print_as_fatal_error((T66*)(oBC13eh));
  1196. }
  1197.  
  1198.  
  1199. T6 r256is_string(T256* C){
  1200. T6 R=0;
  1201. R=X52is_string((/*RF2*/(C)->_run_type/*12*/));
  1202. return R;
  1203. }
  1204.  
  1205.  
  1206. void r256c_initialize_in(T256* C,T0* a1){
  1207. X52c_initialize_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1208. }
  1209.  
  1210.  
  1211. T0* r256smallest_ancestor(T256* C,T0* a1){
  1212. T0* R=NULL;
  1213. R=X52smallest_ancestor((/*RF2*/(C)->_run_type/*12*/),a1);
  1214. return R;
  1215. }
  1216.  
  1217.  
  1218. void r256c_header_pass2(T256* C){
  1219. X52c_header_pass2((/*RF2*/(C)->_run_type/*12*/));
  1220. }
  1221.  
  1222.  
  1223. void r256with(T256* C,T0* a1,T0* a2){
  1224. (/*SFN*/C->_start_position)=(/*RF2*/(((T256*)a1))->_start_position/*4*/);
  1225. (/*SFN*/C->_run_type)=a2;
  1226. }
  1227.  
  1228.  
  1229. void r256c_header_pass4(T256* C){
  1230. X52c_header_pass4((/*RF2*/(C)->_run_type/*12*/));
  1231. }
  1232.  
  1233.  
  1234. T6 r256is_double(T256* C){
  1235. T6 R=0;
  1236. R=X52is_double((/*RF2*/(C)->_run_type/*12*/));
  1237. return R;
  1238. }
  1239.  
  1240.  
  1241. T6 r256is_none(T256* C){
  1242. T6 R=0;
  1243. R=X52is_none((/*RF2*/(C)->_run_type/*12*/));
  1244. return R;
  1245. }
  1246.  
  1247.  
  1248. T0* r256to_runnable(T256* C,T0* a1){
  1249. T0* R=NULL;
  1250. /*[IF*/
  1251. if(((/*RF2*/(C)->_run_type/*12*/))==((void*)(NULL))){
  1252. (/*SFN*/C->_run_type)=a1;
  1253. R=((T0*)(C));
  1254. }
  1255.  else if(((/*RF2*/(C)->_run_type/*12*/))==((void*)(a1))){
  1256. R=((T0*)(C));
  1257. }
  1258. else{
  1259. {T256*n=((T256*)malloc(sizeof(*n))/*16*/);
  1260. *n=M256;
  1261. r256with(n,(T0*)C,a1);
  1262. R=((T0*)n);
  1263. }
  1264. }
  1265. /*FI]*/
  1266. return R;
  1267. }
  1268.  
  1269.  
  1270. T6 r256is_pointer(T256* C){
  1271. T6 R=0;
  1272. R=X52is_pointer((/*RF2*/(C)->_run_type/*12*/));
  1273. return R;
  1274. }
  1275.  
  1276.  
  1277. void r256id_extra_information(T256* C,T0* a1){
  1278. r48put_string(((T48*)a1),((T0*)ms52_9724));
  1279. /*[IF*/
  1280. if(r256is_reference(C)){
  1281. r48put_string(((T48*)a1),((T0*)ms52_1476));
  1282. }
  1283. else{
  1284. r48put_string(((T48*)a1),((T0*)ms52_759));
  1285. }
  1286. /*FI]*/
  1287. }
  1288.  
  1289.  
  1290. void r256gc_define1(T256* C){
  1291. X52gc_define1((/*RF2*/(C)->_run_type/*12*/));
  1292. }
  1293.  
  1294.  
  1295. void r256gc_mark_in(T256* C,T0* a1){
  1296. r7append(((T7*)a1),((T0*)ms14_8764));
  1297. r2append_in(r256id(C),a1);
  1298. }
  1299.  
  1300.  
  1301. T0* r256static_base_class_name(T256* C){
  1302. T0* R=NULL;
  1303. R=r68base_class_name(&((/*RF2*/(C)->_start_position/*4*/)));
  1304. return R;
  1305. }
  1306.  
  1307.  
  1308. void r256c_type_for_external_in(T256* C,T0* a1){
  1309. /*[IF*/
  1310. if(r256is_reference(C)){
  1311. r7append(((T7*)a1),((T0*)ms14_1736a));
  1312. r7extend(((T7*)a1),((T3)'\52'));
  1313. }
  1314. else{
  1315. r256c_type_for_result_in(C,a1);
  1316. }
  1317. /*FI]*/
  1318. }
  1319.  
  1320.  
  1321. void r256c_type_for_argument_in(T256* C,T0* a1){
  1322. X52c_type_for_argument_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1323. }
  1324.  
  1325.  
  1326. T0* r256run_time_mark(T256* C){
  1327. T0* R=NULL;
  1328. /*[IF*/
  1329. if(((/*RF2*/(C)->_run_type/*12*/))!=((void*)(NULL))){
  1330. R=X52run_time_mark((/*RF2*/(C)->_run_type/*12*/));
  1331. }
  1332. /*FI]*/
  1333. return R;
  1334. }
  1335.  
  1336.  
  1337. T0* r256run_class(T256* C){
  1338. T0* R=NULL;
  1339. R=r49run_class((/*RF2*/(C)->_run_type/*12*/));
  1340. return R;
  1341. }
  1342.  
  1343.  
  1344. T6 r256is_dummy_expanded(T256* C){
  1345. T6 R=0;
  1346. R=X52is_dummy_expanded((/*RF2*/(C)->_run_type/*12*/));
  1347. return R;
  1348. }
  1349.  
  1350.  
  1351. T6 r256is_expanded(T256* C){
  1352. T6 R=0;
  1353. R=X52is_expanded((/*RF2*/(C)->_run_type/*12*/));
  1354. return R;
  1355. }
  1356.  
  1357.  
  1358. void r256c_type_for_result_in(T256* C,T0* a1){
  1359. X52c_type_for_result_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1360. }
  1361.  
  1362.  
  1363. void r256c_type_for_target_in(T256* C,T0* a1){
  1364. X52c_type_for_target_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1365. }
  1366.  
  1367.  
  1368. T0* r256expanded_initializer(T256* C){
  1369. T0* R=NULL;
  1370. R=X52expanded_initializer((/*RF2*/(C)->_run_type/*12*/));
  1371. return R;
  1372. }
  1373.  
  1374.  
  1375. T6 r256is_basic_eiffel_expanded(T256* C){
  1376. T6 R=0;
  1377. R=X52is_basic_eiffel_expanded((/*RF2*/(C)->_run_type/*12*/));
  1378. return R;
  1379. }
  1380.  
  1381.  
  1382. void r256demangling_in(T256* C,T0* a1){
  1383. /*[IF*/
  1384. if(r256is_reference(C)){
  1385. r7extend(((T7*)a1),((T3)'R'));
  1386. }
  1387. else{
  1388. r7extend(((T7*)a1),((T3)'E'));
  1389. }
  1390. /*FI]*/
  1391. r7extend(((T7*)a1),((T3)'\40'));
  1392. r7append(((T7*)a1),r256run_time_mark(C));
  1393. }
  1394.  
  1395.  
  1396. void r256c_initialize(T256* C){
  1397. X52c_initialize((/*RF2*/(C)->_run_type/*12*/));
  1398. }
  1399.  
  1400.  
  1401. T6 r256is_character(T256* C){
  1402. T6 R=0;
  1403. R=X52is_character((/*RF2*/(C)->_run_type/*12*/));
  1404. return R;
  1405. }
  1406.  
  1407.  
  1408. T0* r256written_mark(void){
  1409. T0* R=NULL;
  1410. R=((T0*)ms15_22140);
  1411. return R;
  1412. }
  1413.  
  1414.  
  1415. T0* r256base_class_name(T256* C){
  1416. T0* R=NULL;
  1417. R=X52base_class_name((/*RF2*/(C)->_run_type/*12*/));
  1418. return R;
  1419. }
  1420.  
  1421.  
  1422. void r256c_frame_descriptor(T256* C){
  1423. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  1424. /*[IF*/
  1425. if(r256is_reference(C)){
  1426. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'R'));
  1427. }
  1428. else{
  1429. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'E'));
  1430. }
  1431. /*FI]*/
  1432. r2append_in(r256id(C),oBC13c_frame_descriptor_format);
  1433. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  1434. }
  1435.  
  1436.  
  1437. T6 r256is_bit(T256* C){
  1438. T6 R=0;
  1439. R=X52is_bit((/*RF2*/(C)->_run_type/*12*/));
  1440. return R;
  1441. }
  1442.  
  1443.  
  1444. void r256gc_info_in(T256* C,T0* a1){
  1445. X52gc_info_in((/*RF2*/(C)->_run_type/*12*/),a1);
  1446. }
  1447.  
  1448.  
  1449. void r256gc_define2(T256* C){
  1450. X52gc_define2((/*RF2*/(C)->_run_type/*12*/));
  1451. }
  1452.  
  1453.  
  1454. T0* r266generic_list(T266* C){
  1455. T0* R=NULL;
  1456. r266fatal_error_generic_list(C);
  1457. return R;
  1458. }
  1459. T0*oBC266type_double_ref=NULL;
  1460. int fBC266type_double_ref=0;
  1461.  
  1462.  
  1463. T0* r266type_double_ref(void){
  1464. if(fBC266type_double_ref==0){fBC266type_double_ref=1;{
  1465. T0* _double_ref=NULL;
  1466. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  1467. *n=M61;
  1468. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(((T0*)ms15_10740));
  1469. /*]*/
  1470. _double_ref=((T0*)n);
  1471. }
  1472. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  1473. *n=M272;
  1474. oBC266type_double_ref=((T0*)n);
  1475. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_double_ref);
  1476. /*]*/
  1477. }
  1478. }}
  1479. return oBC266type_double_ref;
  1480. }
  1481.  
  1482.  
  1483. void r266gc_call_new_in(T0* a1){
  1484. r7append(((T7*)a1),((T0*)ms14_990));
  1485. r2append_in(5,a1);
  1486. r7extend(((T7*)a1),((T3)'\50'));
  1487. r7extend(((T7*)a1),((T3)'\51'));
  1488. }
  1489.  
  1490.  
  1491. T0* r266base_class(T266* C){
  1492. T0* R=NULL;
  1493. T0* _bcn=NULL;
  1494. _bcn=(/*RF2*/(C)->_base_class_name/*4*/);
  1495. /*[IF*/
  1496. if((_bcn)!=((void*)(NULL))){
  1497. R=r61base_class(((T61*)_bcn));
  1498. }
  1499. else{
  1500. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  1501. r7append((T7*)(oBC66explanation),b1);
  1502. }/*]*/
  1503. r66add_type((T0*)C,((T0*)ms14_46));
  1504. r66print_as_fatal_error((T66*)(oBC13eh));
  1505. }
  1506. /*FI]*/
  1507. return R;
  1508. }
  1509.  
  1510.  
  1511. T0* r266look_up_for(T266* C,T0* a1,T0* a2){
  1512. T0* R=NULL;
  1513. R=r51look_up_for((T51*)(r266base_class(C)),a1,a2);
  1514. return R;
  1515. }
  1516.  
  1517.  
  1518. T2 r266c_sizeof(void){
  1519. T2 R=0;
  1520. R=((/*UT*/(void)(((T5)(0.0)))),sizeof(T5));
  1521. return R;
  1522. }
  1523.  
  1524.  
  1525. T6 r266has_creation(T266* C,T0* a1){
  1526. T6 R=0;
  1527. {T68 se_tmp0;
  1528. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  1529. }
  1530. r266error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms264_99414));
  1531. return R;
  1532. }
  1533.  
  1534.  
  1535. void r266error(T68 a1,T0* a2){
  1536. r66add_position(a1);
  1537. /*[IRF3.6append*/{T0* b1=a2;
  1538. r7append((T7*)(oBC66explanation),b1);
  1539. }/*]*/
  1540. r66print_as_error((T66*)(oBC13eh));
  1541. }
  1542.  
  1543.  
  1544. T0* r266actual_reference(T0* a1){
  1545. T0* R=NULL;
  1546. T0* _cn=NULL;
  1547. /*[IF*/
  1548. if((X52run_time_mark(a1))==((void*)(((T0*)ms15_10740)))){
  1549. R=a1;
  1550. }
  1551. else{
  1552. {T68 se_tmp0;
  1553. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  1554. *n=M61;
  1555. r61make(n,((T0*)ms15_10740),(*(se_tmp0=X52start_position(a1),&se_tmp0)));
  1556. _cn=((T0*)n);
  1557. }
  1558. }
  1559. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  1560. *n=M272;
  1561. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_cn);
  1562. /*]*/
  1563. R=((T0*)n);
  1564. }
  1565. }
  1566. /*FI]*/
  1567. return R;
  1568. }
  1569.  
  1570.  
  1571. T6 r266is_a_in(T266* C,T0* a1,T0* a2){
  1572. T6 R=0;
  1573. T0* _ct=NULL;
  1574. T0* _t2=NULL;
  1575. T0* _t1=NULL;
  1576. /*[IF*/
  1577. if((r266written_mark())==((void*)(X52written_mark(a1)))){
  1578. R=1;
  1579. }
  1580. else{
  1581. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  1582. _t1=r266to_runnable(C,_ct);
  1583. _t2=X52to_runnable(a1,_ct);
  1584. /*[IF*/
  1585. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  1586. R=1;
  1587. }
  1588. else{
  1589. R=X52is_a(_t1,_t2);
  1590. }
  1591. /*FI]*/
  1592. }
  1593. /*FI]*/
  1594. return R;
  1595. }
  1596.  
  1597.  
  1598. T6 r266is_native_array(T266* C){
  1599. T6 R=0;
  1600. T0* _tna=NULL;
  1601. _tna=NULL;
  1602. R=(_tna)!=((void*)(NULL));
  1603. return R;
  1604. }
  1605.  
  1606.  
  1607. T6 r266is_a(T266* C,T0* a1){
  1608. T6 R=0;
  1609. /*[IF*/
  1610. if(X52is_double(a1)){
  1611. R=1;
  1612. }
  1613.  else if(r51is_subclass_of((T51*)(r266base_class(C)),X52base_class(a1))){
  1614. R=1;
  1615. }
  1616. /*FI]*/
  1617. /*[IF*/
  1618. if(!(R)){
  1619. r66add_type((T0*)C,((T0*)ms14_17460));
  1620. r66add_type(a1,((T0*)ms14_46));
  1621. }
  1622. /*FI]*/
  1623. return R;
  1624. }
  1625.  
  1626.  
  1627. void r266make(T266* C,T68 a1){
  1628. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  1629. *n=M61;
  1630. r61make(n,((T0*)ms15_4728),a1);
  1631. (/*SFN*/C->_base_class_name)=((T0*)n);
  1632. }
  1633. }
  1634.  
  1635.  
  1636. void r266fatal_error_generic_list(T266* C){
  1637. r66add_type((T0*)C,((T0*)ms52_28899));
  1638. r66print_as_fatal_error((T66*)(oBC13eh));
  1639. }
  1640.  
  1641.  
  1642. void r266c_initialize_in(T0* a1){
  1643. /*[IF*/
  1644. /*AF*//*AE*/
  1645. r7extend(((T7*)a1),((T3)'0'));
  1646. /*FI]*/
  1647. }
  1648.  
  1649.  
  1650. T0* r266smallest_ancestor(T266* C,T0* a1){
  1651. T0* R=NULL;
  1652. T0* _rto=NULL;
  1653. _rto=X52run_type(a1);
  1654. /*[IF*/
  1655. if(X52is_integer(_rto)){
  1656. R=((T0*)(C));
  1657. }
  1658.  else if(X52is_real(_rto)){
  1659. R=((T0*)(C));
  1660. }
  1661.  else if(X52is_double(_rto)){
  1662. R=((T0*)(C));
  1663. }
  1664. else{
  1665. R=r272smallest_ancestor((T272*)(r266type_double_ref()),_rto);
  1666. }
  1667. /*FI]*/
  1668. return R;
  1669. }
  1670. int fBC266check_type=0;
  1671.  
  1672.  
  1673. void r266check_type(T266* C){
  1674. if(fBC266check_type==0){fBC266check_type=1;{
  1675. T0* _rc=NULL;
  1676. T0* _bc=NULL;
  1677. _bc=r266base_class(C);
  1678. /*[IF*/
  1679. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  1680. _rc=r266run_class(C);
  1681. r266load_ref(((T0*)ms15_10740));
  1682. }
  1683. /*FI]*/
  1684. /*[IF*/
  1685. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  1686. /*[IF*/
  1687. if(!((/*RF2*/(((T51*)_bc))->_is_expanded/*17*/))){
  1688. r266error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms266_35472));
  1689. }
  1690. /*FI]*/
  1691. }
  1692. /*FI]*/
  1693. }}}
  1694.  
  1695.  
  1696. void r266load_ref(T0* a1){
  1697. T0* _rf=NULL;
  1698. T0* _rc=NULL;
  1699. T0* _cn=NULL;
  1700. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  1701. *n=M61;
  1702. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(a1);
  1703. /*]*/
  1704. _cn=((T0*)n);
  1705. }
  1706. _rc=r51run_class((T51*)(r61base_class(((T61*)_cn))));
  1707. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_1724));
  1708. }
  1709.  
  1710.  
  1711. T0* r266to_runnable(T266* C,T0* a1){
  1712. T0* R=NULL;
  1713. R=((T0*)(C));
  1714. r266check_type(C);
  1715. return R;
  1716. }
  1717.  
  1718.  
  1719. void r266id_extra_information(T0* a1){
  1720. r48put_string(((T48*)a1),((T0*)ms52_9724));
  1721. /*[IF*/
  1722. /*AF*//*AE*/
  1723. r48put_string(((T48*)a1),((T0*)ms52_759));
  1724. /*FI]*/
  1725. }
  1726.  
  1727.  
  1728. void r266gc_mark_in(T0* a1){
  1729. r7append(((T7*)a1),((T0*)ms14_8764));
  1730. r2append_in(5,a1);
  1731. }
  1732.  
  1733.  
  1734. void r266c_type_for_external_in(T0* a1){
  1735. /*[IF*/
  1736. /*AF*//*AE*/
  1737. /*[IRF3.6c_type_for_result_in*/{T0* b1=a1;
  1738. r266c_type_for_argument_in(b1);
  1739. }/*]*/
  1740. /*FI]*/
  1741. }
  1742.  
  1743.  
  1744. void r266c_type_for_argument_in(T0* a1){
  1745. r7extend(((T7*)a1),((T3)'T'));
  1746. r7extend(((T7*)a1),((T3)'5'));
  1747. }
  1748.  
  1749.  
  1750. T0* r266run_time_mark(void){
  1751. T0* R=NULL;
  1752. R=((T0*)ms15_4728);
  1753. return R;
  1754. }
  1755.  
  1756.  
  1757. T0* r266run_class(T266* C){
  1758. T0* R=NULL;
  1759. R=r49run_class((T0*)C);
  1760. return R;
  1761. }
  1762.  
  1763.  
  1764. void r266demangling_in(T0* a1){
  1765. /*[IF*/
  1766. /*AF*//*AE*/
  1767. r7extend(((T7*)a1),((T3)'E'));
  1768. /*FI]*/
  1769. r7extend(((T7*)a1),((T3)'\40'));
  1770. r7append(((T7*)a1),r266run_time_mark());
  1771. }
  1772.  
  1773.  
  1774. T0* r266written_mark(void){
  1775. T0* R=NULL;
  1776. R=((T0*)ms15_4728);
  1777. return R;
  1778. }
  1779. T0*oBC13type_any=NULL;
  1780. int fBC13type_any=0;
  1781.  
  1782.  
  1783. T0* r137type_any(void){
  1784. if(fBC13type_any==0){fBC13type_any=1;{
  1785. T68 _unknown_position={NULL,0};
  1786. {T259*n=((T259*)malloc(sizeof(*n))/*8*/);
  1787. *n=M259;
  1788. oBC13type_any=((T0*)n);
  1789. r259make(n,_unknown_position);
  1790. }
  1791. }}
  1792. return oBC13type_any;
  1793. }
  1794.  
  1795.  
  1796. void r137vwst1_check(T137* C,T0* a1){
  1797. T0* _rf2=NULL;
  1798. T0* _fn=NULL;
  1799. T2 _j=0;
  1800. T2 _i=0;
  1801. /*[IF*/
  1802. if((a1)==((void*)(NULL))){
  1803. /*[IF*/
  1804. if(((/*RF2*/(C)->_list/*16*/))==((void*)(NULL))){
  1805. }
  1806. else{
  1807. {T68 se_tmp0;
  1808. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_list/*16*/)),1)),&se_tmp0)));
  1809. }
  1810. /*[IRF3.6append*/{T0* b1=((T0*)ms137_112950);
  1811. r7append((T7*)(oBC66explanation),b1);
  1812. }/*]*/
  1813. r66print_as_error((T66*)(oBC13eh));
  1814. }
  1815. /*FI]*/
  1816. }
  1817.  else if(((/*RF2*/(C)->_list/*16*/))!=((void*)(NULL))){
  1818. _i=r83count((T83*)((/*RF2*/(C)->_list/*16*/)));
  1819. while (!((_i)==(0)))
  1820. {
  1821. _fn=r83item((T83*)((/*RF2*/(C)->_list/*16*/)),_i);
  1822. _j=(/*RF2*/(((T346*)a1))->_upper/*12*/);
  1823. _rf2=NULL;
  1824. while (!((_j)<=(0)))
  1825. {
  1826. _rf2=r346item(((T346*)a1),_j);
  1827. /*[IF*/
  1828. if((X82to_string((/*RF2*/(((T345*)_rf2))->_name/*12*/)))==((void*)(X82to_string(_fn)))){
  1829. _j=-(1);
  1830. }
  1831. else{
  1832. _j=(_j)-(1);
  1833. }
  1834. /*FI]*/
  1835. }
  1836. /*[IF*/
  1837. if((_j)==(0)){
  1838. {T68 se_tmp0;
  1839. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  1840. }
  1841. /*[IRF3.6append*/{T0* b1=((T0*)ms137_112950);
  1842. r7append((T7*)(oBC66explanation),b1);
  1843. }/*]*/
  1844. r66print_as_error((T66*)(oBC13eh));
  1845. }
  1846. /*FI]*/
  1847. _i=(_i)-(1);
  1848. }
  1849. }
  1850. /*FI]*/
  1851. }
  1852.  
  1853.  
  1854. T2 r137array_count(T137* C,T0* a1){
  1855. T2 R=0;
  1856. /*[IF*/
  1857. if((a1)!=((void*)(NULL))){
  1858. R=r346count(((T346*)a1));
  1859. }
  1860. /*FI]*/
  1861. /*[IF*/
  1862. if(((/*RF2*/(C)->_list/*16*/))!=((void*)(NULL))){
  1863. R=(R)-(r83count((T83*)((/*RF2*/(C)->_list/*16*/))));
  1864. }
  1865. /*FI]*/
  1866. return R;
  1867. }
  1868.  
  1869.  
  1870. T0* r137add_comment(T137* C,T0* a1){
  1871. T0* R=NULL;
  1872. /*[IF*/
  1873. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  1874. R=((T0*)(C));
  1875. }
  1876. else{
  1877. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  1878. *n=M229;
  1879. r229make(n,(T0*)C,a1);
  1880. R=((T0*)n);
  1881. }
  1882. }
  1883. /*FI]*/
  1884. return R;
  1885. }
  1886.  
  1887.  
  1888. void r137afd_check(T137* C){
  1889. T0* _fd=NULL;
  1890. T0* _dt=NULL;
  1891. T0* _st=NULL;
  1892. T2 _i=0;
  1893. T0* _rf2=NULL;
  1894. _fd=(/*RF2*/((T50*)(X52run_class((/*RF2*/(C)->_current_type/*4*/))))->_feature_dictionary/*18*/);
  1895. _i=1;
  1896. while (!((_i)>((/*RF2*/(((T348*)_fd))->_count/*36*/))))
  1897. {
  1898. _rf2=r348item(((T348*)_fd),_i);
  1899. if(NULL!=(_rf2)){
  1900. switch(((T0*)_rf2)->id){
  1901. case 345:
  1902. break;
  1903. default:
  1904. _rf2=NULL;
  1905. }
  1906. }/*[IF*/
  1907. if((_rf2)!=((void*)(NULL))){
  1908. /*[IF*/
  1909. if((((/*RF2*/(C)->_list/*16*/))==((void*)(NULL)))||(!(r83has((T83*)((/*RF2*/(C)->_list/*16*/)),(/*RF2*/(((T345*)_rf2))->_name/*12*/))))){
  1910. _st=(/*RF2*/(((T345*)_rf2))->_result_type/*28*/);
  1911. /*[IF*/
  1912. if(X52is_expanded(_st)){
  1913. _dt=X52actual_reference(_st,r137type_any());
  1914. r341passing((T341*)(oBC13conversion_handler),_st,_dt);
  1915. }
  1916. /*FI]*/
  1917. }
  1918. /*FI]*/
  1919. }
  1920. /*FI]*/
  1921. _i=(_i)+(1);
  1922. }
  1923. }
  1924.  
  1925.  
  1926. T0* r137to_runnable(T137* C,T0* a1){
  1927. T0* R=NULL;
  1928. /*[IF*/
  1929. if(((/*RF2*/(C)->_current_type/*4*/))==((void*)(NULL))){
  1930. (/*SFN*/C->_current_type)=a1;
  1931. R=((T0*)(C));
  1932. }
  1933. else{
  1934. {T137*n=((T137*)malloc(sizeof(*n))/*24*/);
  1935. *n=M137;
  1936. r137make(n,(/*RF2*/(C)->_start_position/*8*/),(/*RF2*/(C)->_list/*16*/));
  1937. R=((T0*)n);
  1938. }
  1939. R=r137to_runnable(((T137*)R),a1);
  1940. }
  1941. /*FI]*/
  1942. return R;
  1943. }
  1944.  
  1945.  
  1946. T2 r137to_integer(T137* C){
  1947. T2 R=0;
  1948. r137error((/*RF2*/(C)->_start_position/*8*/),((T0*)ms14_45441));
  1949. return R;
  1950. }
  1951.  
  1952.  
  1953. void r137error(T68 a1,T0* a2){
  1954. r66add_position(a1);
  1955. /*[IRF3.6append*/{T0* b1=a2;
  1956. r7append((T7*)(oBC66explanation),b1);
  1957. }/*]*/
  1958. r66print_as_error((T66*)(oBC13eh));
  1959. }
  1960.  
  1961.  
  1962. T0* r137result_type(T137* C){
  1963. T0* R=NULL;
  1964. /*[IF*/
  1965. if(((/*RF2*/(C)->_result_type_memory/*20*/))==((void*)(NULL))){
  1966. {T260*n=((T260*)malloc(sizeof(*n))/*20*/);
  1967. *n=M260;
  1968. r260make(n,(/*RF2*/(C)->_start_position/*8*/),r137type_any());
  1969. (/*SFN*/C->_result_type_memory)=((T0*)n);
  1970. }
  1971. (/*SFN*/C->_result_type_memory)=r260to_runnable((T260*)((/*RF2*/(C)->_result_type_memory/*20*/)),r137type_any());
  1972. r50set_at_run_time((T50*)(r260run_class((T260*)((/*RF2*/(C)->_result_type_memory/*20*/)))));
  1973. r260load_basic_features((T260*)((/*RF2*/(C)->_result_type_memory/*20*/)));
  1974. r361register((/*RF2*/(C)->_result_type_memory/*20*/));
  1975. }
  1976. /*FI]*/
  1977. R=(/*RF2*/(C)->_result_type_memory/*20*/);
  1978. return R;
  1979. }
  1980.  
  1981.  
  1982. T0* r137static_result_base_class(void){
  1983. T0* R=NULL;
  1984. R=r49get_class(((T0*)ms15_1915));
  1985. return R;
  1986. }
  1987.  
  1988.  
  1989. void r137make(T137* C,T68 a1,T0* a2){
  1990. (/*SFN*/C->_start_position)=a1;
  1991. (/*SFN*/C->_list)=a2;
  1992. }
  1993.  
  1994.  
  1995. void r137compile_to_c(T137* C){
  1996. T0* _dt=NULL;
  1997. T0* _st=NULL;
  1998. T0* _ct=NULL;
  1999. T2 _i=0;
  2000. T0* _rf2=NULL;
  2001. T0* _wa=NULL;
  2002. r361c_call(r137result_type(C));
  2003. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2004. T3 b1=((T3)'\50');
  2005. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2006. }/*]*/
  2007. /*]*/
  2008. _ct=(/*RF2*/(C)->_current_type/*4*/);
  2009. _wa=r50writable_attributes((T50*)(X52run_class(_ct)));
  2010. r137vwst1_check(C,_wa);
  2011. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),r137array_count(C,_wa));
  2012. /*]*/
  2013. /*[IF*/
  2014. if((_wa)!=((void*)(NULL))){
  2015. _i=(/*RF2*/(((T346*)_wa))->_upper/*12*/);
  2016. while (!((_i)==(0)))
  2017. {
  2018. _rf2=r346item(((T346*)_wa),_i);
  2019. /*[IF*/
  2020. if((((/*RF2*/(C)->_list/*16*/))==((void*)(NULL)))||(!(r83has((T83*)((/*RF2*/(C)->_list/*16*/)),(/*RF2*/(((T345*)_rf2))->_name/*12*/))))){
  2021. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2022. T3 b1=((T3)'\54');
  2023. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2024. }/*]*/
  2025. /*]*/
  2026. _st=(/*RF2*/(((T345*)_rf2))->_result_type/*28*/);
  2027. /*[IF*/
  2028. if(X52is_expanded(_st)){
  2029. _dt=X52actual_reference(_st,r137type_any());
  2030. r341c_function_call((T341*)(oBC13conversion_handler),_st,_dt);
  2031. }
  2032. /*FI]*/
  2033. r325print_current((T325*)(oBC13cpp));
  2034. /*[IF*/
  2035. if(X52is_expanded((/*RF2*/(C)->_current_type/*4*/))){
  2036. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2037. T3 b1=((T3)'\56');
  2038. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2039. }/*]*/
  2040. /*]*/
  2041. }
  2042. else{
  2043. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms137_214));
  2044. /*]*/
  2045. }
  2046. /*FI]*/
  2047. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2048. T3 b1=((T3)'\137');
  2049. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2050. }/*]*/
  2051. /*]*/
  2052. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X82to_string((/*RF2*/(((T345*)_rf2))->_name/*12*/)));
  2053. /*]*/
  2054. /*[IF*/
  2055. if(X52is_expanded(_st)){
  2056. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2057. T3 b1=((T3)'\51');
  2058. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2059. }/*]*/
  2060. /*]*/
  2061. }
  2062. /*FI]*/
  2063. }
  2064. /*FI]*/
  2065. _i=(_i)-(1);
  2066. }
  2067. }
  2068. /*FI]*/
  2069. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2070. T3 b1=((T3)'\51');
  2071. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2072. }/*]*/
  2073. /*]*/
  2074. }
  2075. T0*oBC13manifest_array_pool=NULL;
  2076.  
  2077.  
  2078. void r393compile_to_c_old(T393* C){
  2079. X104compile_to_c_old((/*RF2*/(C)->_expression/*4*/));
  2080. }
  2081.  
  2082.  
  2083. T2 r393static_value(T393* C){
  2084. T2 R=0;
  2085. R=X104static_value((/*RF2*/(C)->_expression/*4*/));
  2086. return R;
  2087. }
  2088.  
  2089.  
  2090. T6 r393is_current(T393* C){
  2091. T6 R=0;
  2092. R=X104is_current((/*RF2*/(C)->_expression/*4*/));
  2093. return R;
  2094. }
  2095.  
  2096.  
  2097. void r393dca_inline_argument(T393* C,T0* a1){
  2098. X104dca_inline_argument((/*RF2*/(C)->_expression/*4*/),a1);
  2099. }
  2100.  
  2101.  
  2102. T0* r393add_comment(T393* C,T0* a1){
  2103. T0* R=NULL;
  2104. /*[IF*/
  2105. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2106. R=((T0*)(C));
  2107. }
  2108. else{
  2109. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  2110. *n=M229;
  2111. r229make(n,(T0*)C,a1);
  2112. R=((T0*)n);
  2113. }
  2114. }
  2115. /*FI]*/
  2116. return R;
  2117. }
  2118.  
  2119.  
  2120. void r393mapping_c_target(T393* C,T0* a1){
  2121. /*[IRF3.6c_wrapper_opening*/{T393* C1=C;
  2122. r341c_function_call((T341*)(oBC13conversion_handler),(/*RF2*/(C1)->_source_type/*8*/),(/*RF2*/(C1)->_destination_type/*12*/));
  2123. }/*]*/
  2124. X104mapping_c_target((/*RF2*/(C)->_expression/*4*/),(/*RF2*/(C)->_source_type/*8*/));
  2125. /*[IRF3.2c_wrapper_closing*//*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2126. T3 b1=((T3)'\51');
  2127. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2128. }/*]*/
  2129. /*]*/
  2130. /*]*/
  2131. }
  2132.  
  2133.  
  2134. void r393afd_check(T393* C){
  2135. X104afd_check((/*RF2*/(C)->_expression/*4*/));
  2136. }
  2137.  
  2138.  
  2139. void r393c_declare_for_old(T393* C){
  2140. X104c_declare_for_old((/*RF2*/(C)->_expression/*4*/));
  2141. }
  2142.  
  2143.  
  2144. void r393collect_c_tmp(T393* C){
  2145. X104collect_c_tmp((/*RF2*/(C)->_expression/*4*/));
  2146. }
  2147.  
  2148.  
  2149. T6 r393use_current(T393* C){
  2150. T6 R=0;
  2151. R=X104use_current((/*RF2*/(C)->_expression/*4*/));
  2152. return R;
  2153. }
  2154.  
  2155.  
  2156. T0* r393to_runnable(T393* C,T0* a1){
  2157. T0* R=NULL;
  2158. R=X104to_runnable((/*RF2*/(C)->_expression/*4*/),a1);
  2159. return R;
  2160. }
  2161.  
  2162.  
  2163. T2 r393to_integer(T393* C){
  2164. T2 R=0;
  2165. {T68 se_tmp0;
  2166. r393error((*(se_tmp0=r393start_position(C),&se_tmp0)),((T0*)ms14_45441));
  2167. }
  2168. return R;
  2169. }
  2170.  
  2171.  
  2172. T6 r393is_void(T393* C){
  2173. T6 R=0;
  2174. R=X104is_void((/*RF2*/(C)->_expression/*4*/));
  2175. return R;
  2176. }
  2177.  
  2178.  
  2179. T6 r393is_static(T393* C){
  2180. T6 R=0;
  2181. R=X104is_static((/*RF2*/(C)->_expression/*4*/));
  2182. return R;
  2183. }
  2184.  
  2185.  
  2186. void r393error(T68 a1,T0* a2){
  2187. r66add_position(a1);
  2188. /*[IRF3.6append*/{T0* b1=a2;
  2189. r7append((T7*)(oBC66explanation),b1);
  2190. }/*]*/
  2191. r66print_as_error((T66*)(oBC13eh));
  2192. }
  2193.  
  2194.  
  2195. T6 r393c_simple(T393* C){
  2196. T6 R=0;
  2197. R=X104c_simple((/*RF2*/(C)->_expression/*4*/));
  2198. return R;
  2199. }
  2200.  
  2201.  
  2202. T6 r393can_be_dropped(T393* C){
  2203. T6 R=0;
  2204. R=X104can_be_dropped((/*RF2*/(C)->_expression/*4*/));
  2205. return R;
  2206. }
  2207.  
  2208.  
  2209. T0* r393static_result_base_class(T393* C){
  2210. T0* R=NULL;
  2211. R=X52base_class(/*(IRF4.3result_type*/(/*RF2*/(C)->_destination_type/*12*/)/*)*/);
  2212. return R;
  2213. }
  2214.  
  2215.  
  2216. void r393make(T393* C,T0* a1,T0* a2){
  2217. (/*SFN*/C->_expression)=a1;
  2218. (/*SFN*/C->_source_type)=X104result_type(a1);
  2219. (/*SFN*/C->_destination_type)=a2;
  2220. r341notify((T341*)(oBC13conversion_handler),(/*RF2*/(C)->_expression/*4*/),(/*RF2*/(C)->_source_type/*8*/),(/*RF2*/(C)->_destination_type/*12*/));
  2221. }
  2222.  
  2223.  
  2224. void r393assertion_check(T393* C,T3 a1){
  2225. X104assertion_check((/*RF2*/(C)->_expression/*4*/),a1);
  2226. }
  2227.  
  2228.  
  2229. void r393compile_to_c(T393* C){
  2230. /*[IRF3.6c_wrapper_opening*/{T393* C1=C;
  2231. r341c_function_call((T341*)(oBC13conversion_handler),(/*RF2*/(C1)->_source_type/*8*/),(/*RF2*/(C1)->_destination_type/*12*/));
  2232. }/*]*/
  2233. X104compile_to_c((/*RF2*/(C)->_expression/*4*/));
  2234. /*[IRF3.2c_wrapper_closing*//*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2235. T3 b1=((T3)'\51');
  2236. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2237. }/*]*/
  2238. /*]*/
  2239. /*]*/
  2240. }
  2241.  
  2242.  
  2243. T6 r393is_result(T393* C){
  2244. T6 R=0;
  2245. R=X104is_result((/*RF2*/(C)->_expression/*4*/));
  2246. return R;
  2247. }
  2248.  
  2249.  
  2250. T6 r393stupid_switch(T393* C,T0* a1){
  2251. T6 R=0;
  2252. R=X104stupid_switch((/*RF2*/(C)->_expression/*4*/),a1);
  2253. return R;
  2254. }
  2255.  
  2256.  
  2257. void r393mapping_c_arg(T393* C,T0* a1){
  2258. /*[IRF3.6c_wrapper_opening*/{T393* C1=C;
  2259. r341c_function_call((T341*)(oBC13conversion_handler),(/*RF2*/(C1)->_source_type/*8*/),(/*RF2*/(C1)->_destination_type/*12*/));
  2260. }/*]*/
  2261. X104mapping_c_arg((/*RF2*/(C)->_expression/*4*/),(/*RF2*/(C)->_source_type/*8*/));
  2262. /*[IRF3.2c_wrapper_closing*//*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2263. T3 b1=((T3)'\51');
  2264. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2265. }/*]*/
  2266. /*]*/
  2267. /*]*/
  2268. }
  2269.  
  2270.  
  2271. T6 r393is_pre_computable(T393* C){
  2272. T6 R=0;
  2273. R=X104is_pre_computable((/*RF2*/(C)->_expression/*4*/));
  2274. return R;
  2275. }
  2276.  
  2277.  
  2278. T2 r393isa_dca_inline_argument(T393* C){
  2279. T2 R=0;
  2280. R=X104isa_dca_inline_argument((/*RF2*/(C)->_expression/*4*/));
  2281. return R;
  2282. }
  2283.  
  2284.  
  2285. T68 r393start_position(T393* C){
  2286. T68 R={NULL,0};
  2287. {T68 se_tmp0;
  2288. R=(*(se_tmp0=X104start_position((/*RF2*/(C)->_expression/*4*/)),&se_tmp0));
  2289. }
  2290. return R;
  2291. }
  2292.  
  2293.  
  2294. void r193compile_to_c_old(T193* C){
  2295. X104compile_to_c_old((/*RF2*/(C)->_target/*4*/));
  2296. /*[IF*/
  2297. {/*AT*//*SSPRF3*//*X139compile_to_c_old*/r139compile_to_c_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2298. }
  2299. /*FI]*/
  2300. }
  2301.  
  2302.  
  2303. T0* r193runnable_expression(T0* a1,T0* a2){
  2304. T0* R=NULL;
  2305. R=X104to_runnable(a1,a2);
  2306. /*[IF*/
  2307. if((R)==((void*)(NULL))){
  2308. {T68 se_tmp0;
  2309. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  2310. }
  2311. r193fatal_error(((T0*)ms116_16290));
  2312. }
  2313. /*FI]*/
  2314. return R;
  2315. }
  2316.  
  2317.  
  2318. void r193run_feature_has_result(T193* C){
  2319. /*[IF*/
  2320. if((X334result_type((/*RF2*/(C)->_run_feature/*16*/)))==((void*)(NULL))){
  2321. {T68 se_tmp0;
  2322. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*16*/)),&se_tmp0)));
  2323. }
  2324. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  2325. r193fatal_error(((T0*)ms115_53215));
  2326. }
  2327. /*FI]*/
  2328. }
  2329.  
  2330.  
  2331. void r193run_feature_match(T193* C,T0* a1){
  2332. r193run_feature_has_result(C);
  2333. X139match_with((/*RF2*/(C)->_arguments/*8*/),(/*RF2*/(C)->_run_feature/*16*/),a1);
  2334. }
  2335.  
  2336.  
  2337. T0* r193add_comment(T193* C,T0* a1){
  2338. T0* R=NULL;
  2339. /*[IF*/
  2340. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2341. R=((T0*)(C));
  2342. }
  2343. else{
  2344. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  2345. *n=M229;
  2346. r229make(n,(T0*)C,a1);
  2347. R=((T0*)n);
  2348. }
  2349. }
  2350. /*FI]*/
  2351. return R;
  2352. }
  2353.  
  2354.  
  2355. void r193with(T193* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  2356. (/*SFN*/C->_target)=a1;
  2357. (/*SFN*/C->_feature_name)=a2;
  2358. (/*SFN*/C->_arguments)=a3;
  2359. (/*SFN*/C->_run_feature)=a4;
  2360. r193run_feature_match(C,a5);
  2361. }
  2362.  
  2363.  
  2364. void r193mapping_c_target(T193* C,T0* a1){
  2365. T0* _actual_type=NULL;
  2366. T6 _flag=0;
  2367. _flag=r325call_invariant_start(a1);
  2368. _actual_type=X52run_type(r193result_type(C));
  2369. /*[IF*/
  2370. if(X52is_reference(_actual_type)){
  2371. /*[IF*/
  2372. if(X52is_reference(a1)){
  2373. X52mapping_cast(a1);
  2374. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2375. T3 b1=((T3)'\50');
  2376. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2377. }/*]*/
  2378. /*]*/
  2379. r193compile_to_c(C);
  2380. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2381. T3 b1=((T3)'\51');
  2382. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2383. }/*]*/
  2384. /*]*/
  2385. }
  2386. else{
  2387. r193compile_to_c(C);
  2388. }
  2389. /*FI]*/
  2390. }
  2391. else{
  2392. /*[IF*/
  2393. if(X52is_reference(a1)){
  2394. r193compile_to_c(C);
  2395. }
  2396. else{
  2397. /*[IF*/
  2398. if(X52need_c_struct(a1)){
  2399. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2400. T3 b1=((T3)'\46');
  2401. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2402. }/*]*/
  2403. /*]*/
  2404. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2405. T3 b1=((T3)'\50');
  2406. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2407. }/*]*/
  2408. /*]*/
  2409. r193compile_to_c(C);
  2410. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2411. T3 b1=((T3)'\51');
  2412. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2413. }/*]*/
  2414. /*]*/
  2415. }
  2416. else{
  2417. r193compile_to_c(C);
  2418. }
  2419. /*FI]*/
  2420. }
  2421. /*FI]*/
  2422. }
  2423. /*FI]*/
  2424. /*[IF*/
  2425. if(_flag){
  2426. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  2427. T3 b1=((T3)'\51');
  2428. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2429. }/*]*/
  2430. /*]*/
  2431. }
  2432. /*FI]*/
  2433. }
  2434.  
  2435.  
  2436. void r193afd_check(T193* C){
  2437. T0* _running=NULL;
  2438. T0* _rc=NULL;
  2439. /*[IF*/
  2440. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  2441. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  2442. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  2443. /*[IF*/
  2444. if((_running)==((void*)(NULL))){
  2445. }
  2446.  else if((r53count(((T53*)_running)))>(1)){
  2447. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*16*/));
  2448. }
  2449. /*FI]*/
  2450. }
  2451. /*FI]*/
  2452. X104afd_check((/*RF2*/(C)->_target/*4*/));
  2453. /*[IF*/
  2454. {/*AT*//*SSPRF3*//*X139afd_check*/r139afd_check((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2455. }
  2456. /*FI]*/
  2457. }
  2458.  
  2459.  
  2460. void r193c_declare_for_old(T193* C){
  2461. X104c_declare_for_old((/*RF2*/(C)->_target/*4*/));
  2462. /*[IF*/
  2463. {/*AT*//*SSPRF3*//*X139c_declare_for_old*/r139c_declare_for_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2464. }
  2465. /*FI]*/
  2466. }
  2467.  
  2468.  
  2469. void r193collect_c_tmp(T193* C){
  2470. /*[IF*/
  2471. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  2472. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*16*/));
  2473. }
  2474. /*FI]*/
  2475. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  2476. /*[IF*/
  2477. if(((/*RF2*/(C)->_arguments/*8*/))!=((void*)(NULL))){
  2478. /*SSPRF3*//*X139collect_c_tmp*/r139collect_c_tmp((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2479. }
  2480. /*FI]*/
  2481. }
  2482.  
  2483.  
  2484. T0* r193operator(void){
  2485. T0* R=NULL;
  2486. R=((T0*)ms15_62);
  2487. return R;
  2488. }
  2489.  
  2490.  
  2491. T6 r193use_current(T193* C){
  2492. T6 R=0;
  2493. /*[IF*/
  2494. {/*AT*/R=/*SSFRF4*//*X139use_current*/r139use_current((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2495. }
  2496. /*FI]*/
  2497. /*[IF*/
  2498. if(R){
  2499. }
  2500.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2501. R=X334use_current((/*RF2*/(C)->_run_feature/*16*/));
  2502. }
  2503. else{
  2504. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  2505. }
  2506. /*FI]*/
  2507. return R;
  2508. }
  2509.  
  2510.  
  2511. T0* r193runnable_args(T0* a1,T0* a2){
  2512. T0* R=NULL;
  2513. R=X139to_runnable(a1,a2);
  2514. /*[IF*/
  2515. if((R)==((void*)(NULL))){
  2516. {T68 se_tmp0;
  2517. r66add_position((*(se_tmp0=X139start_position(a1),&se_tmp0)));
  2518. }
  2519. r193fatal_error(((T0*)ms14_12870));
  2520. }
  2521. /*FI]*/
  2522. return R;
  2523. }
  2524.  
  2525.  
  2526. T0* r193to_runnable(T193* C,T0* a1){
  2527. T0* R=NULL;
  2528. T0* _target_type=NULL;
  2529. T0* _argument_type=NULL;
  2530. T0* _rf=NULL;
  2531. T0* _a=NULL;
  2532. T0* _t=NULL;
  2533. _t=r193runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  2534. _a=r193runnable_args((/*RF2*/(C)->_arguments/*8*/),a1);
  2535. _target_type=X104result_type(_t);
  2536. _argument_type=X104result_type(r193arg1(C));
  2537. /*[IF*/
  2538. if(X52is_real(_argument_type)){
  2539. /*[IF*/
  2540. if(X52is_integer(_target_type)){
  2541. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  2542. }
  2543. /*FI]*/
  2544. }
  2545.  else if(X52is_double(_argument_type)){
  2546. /*[IF*/
  2547. if((X52is_integer(_target_type))||(X52is_real(_target_type))){
  2548. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  2549. }
  2550. /*FI]*/
  2551. }
  2552. /*FI]*/
  2553. _rf=r193run_feature_for(C,_t,a1);
  2554. /*[IF*/
  2555. if(((/*RF2*/(C)->_run_feature/*16*/))==((void*)(NULL))){
  2556. (/*SFN*/C->_target)=_t;
  2557. (/*SFN*/C->_arguments)=_a;
  2558. (/*SFN*/C->_run_feature)=_rf;
  2559. r193run_feature_match(C,a1);
  2560. R=((T0*)(C));
  2561. }
  2562.  else if(((_t)==((void*)((/*RF2*/(C)->_target/*4*/))))&&((_a)==((void*)((/*RF2*/(C)->_arguments/*8*/))))){
  2563. R=((T0*)(C));
  2564. }
  2565. else{
  2566. {T193*n=((T193*)malloc(sizeof(*n))/*24*/);
  2567. *n=M193;
  2568. r193with(n,_t,(/*RF2*/(C)->_feature_name/*12*/),_a,_rf,a1);
  2569. R=((T0*)n);
  2570. }
  2571. }
  2572. /*FI]*/
  2573. return R;
  2574. }
  2575.  
  2576.  
  2577. T2 r193to_integer(T193* C){
  2578. T2 R=0;
  2579. r193error(/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/,((T0*)ms14_45441));
  2580. return R;
  2581. }
  2582.  
  2583.  
  2584. T6 r193is_static(T193* C){
  2585. T6 R=0;
  2586. /*[IF*/
  2587. if(X52is_integer(X104result_type((/*RF2*/(C)->_target/*4*/)))){
  2588. /*[IF*/
  2589. if((X104is_static((/*RF2*/(C)->_target/*4*/)))&&(X104is_static(r193arg1(C)))){
  2590. R=1;
  2591. /*[IF*/
  2592. if((X104static_value((/*RF2*/(C)->_target/*4*/)))>(X104static_value(r193arg1(C)))){
  2593. (/*SFN*/C->_static_value_mem)=1;
  2594. }
  2595. else{
  2596. (/*SFN*/C->_static_value_mem)=0;
  2597. }
  2598. /*FI]*/
  2599. }
  2600. /*FI]*/
  2601. }
  2602. /*FI]*/
  2603. return R;
  2604. }
  2605.  
  2606.  
  2607. void r193finalize(T193* C){
  2608. T0* _rf=NULL;
  2609. T0* _rc=NULL;
  2610. _rf=(/*RF2*/(C)->_run_feature/*16*/);
  2611. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  2612. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  2613. }
  2614.  
  2615.  
  2616. void r193error(T68 a1,T0* a2){
  2617. r66add_position(a1);
  2618. /*[IRF3.6append*/{T0* b1=a2;
  2619. r7append((T7*)(oBC66explanation),b1);
  2620. }/*]*/
  2621. r66print_as_error((T66*)(oBC13eh));
  2622. }
  2623.  
  2624.  
  2625. T0* r193result_type(T193* C){
  2626. T0* R=NULL;
  2627. T0* _tla=NULL;
  2628. R=X334result_type((/*RF2*/(C)->_run_feature/*16*/));
  2629. /*[IF*/
  2630. if(X52is_like_current(R)){
  2631. R=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*16*/)))->_current_type/*8*/);
  2632. }
  2633. else{
  2634. _tla=R;
  2635. if(NULL!=(_tla)){
  2636. switch(((T0*)_tla)->id){
  2637. case 257:
  2638. break;
  2639. default:
  2640. _tla=NULL;
  2641. }
  2642. }/*[IF*/
  2643. if((_tla)!=((void*)(NULL))){
  2644. R=X52run_type(X104result_type(r193arg1(C)));
  2645. }
  2646. /*FI]*/
  2647. }
  2648. /*FI]*/
  2649. return R;
  2650. }
  2651.  
  2652.  
  2653. T0* r193arg1(T193* C){
  2654. T0* R=NULL;
  2655. R=/*SSFRF4*//*X139first*//*(IRF4.3first*/(/*RF2*/((T139*)((/*RF2*/(C)->_arguments/*8*/)))->_first_one/*4*/)/*)*/;
  2656. return R;
  2657. }
  2658.  
  2659.  
  2660. T6 r193call_proc_call_stupid_switch(T193* C,T0* a1){
  2661. T6 R=0;
  2662. /*[IF*/
  2663. if(((/*RF2*/(C)->_arguments/*8*/))==((void*)(NULL))){
  2664. R=1;
  2665. }
  2666. else{
  2667. R=/*SSFRF4*//*X139stupid_switch*/r139stupid_switch((T139*)((/*RF2*/(C)->_arguments/*8*/)),a1);
  2668. }
  2669. /*FI]*/
  2670. /*[IF*/
  2671. if(R){
  2672. /*[IF*/
  2673. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2674. /*[IF*/
  2675. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*16*/),a1)){
  2676. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*16*/),a1))!=((void*)(NULL));
  2677. }
  2678. else{
  2679. R=0;
  2680. }
  2681. /*FI]*/
  2682. }
  2683. else{
  2684. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  2685. }
  2686. /*FI]*/
  2687. }
  2688. /*FI]*/
  2689. return R;
  2690. }
  2691.  
  2692.  
  2693. T0* r193run_feature_for(T193* C,T0* a1,T0* a2){
  2694. T0* R=NULL;
  2695. T0* _bc=NULL;
  2696. T0* _rt=NULL;
  2697. T0* _rc=NULL;
  2698. _rt=X104result_type(a1);
  2699. /*[IF*/
  2700. if((_rt)!=((void*)(NULL))){
  2701. _rc=X52run_class(_rt);
  2702. /*[IF*/
  2703. if((_rc)!=((void*)(NULL))){
  2704. _bc=r50base_class(((T50*)_rc));
  2705. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*12*/),a2);
  2706. }
  2707. /*FI]*/
  2708. }
  2709. /*FI]*/
  2710. /*[IF*/
  2711. if((R)==((void*)(NULL))){
  2712. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  2713. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  2714. r7append((T7*)(oBC66explanation),b1);
  2715. }/*]*/
  2716. r66print_as_fatal_error((T66*)(oBC13eh));
  2717. }
  2718. /*FI]*/
  2719. return R;
  2720. }
  2721.  
  2722.  
  2723. T0* r193static_result_base_class(T193* C){
  2724. T0* R=NULL;
  2725. T0* _cn=NULL;
  2726. T0* _rt=NULL;
  2727. T0* _e_feature=NULL;
  2728. T0* _bc=NULL;
  2729. _bc=X104static_result_base_class((/*RF2*/(C)->_target/*4*/));
  2730. /*[IF*/
  2731. if((_bc)!=((void*)(NULL))){
  2732. _e_feature=r51e_feature(((T51*)_bc),(/*RF2*/(C)->_feature_name/*12*/));
  2733. /*[IF*/
  2734. if((_e_feature)!=((void*)(NULL))){
  2735. _rt=X90result_type(_e_feature);
  2736. /*[IF*/
  2737. if((_rt)!=((void*)(NULL))){
  2738. _cn=X52static_base_class_name(_rt);
  2739. /*[IF*/
  2740. if((_cn)!=((void*)(NULL))){
  2741. R=r61base_class(((T61*)_cn));
  2742. }
  2743. /*FI]*/
  2744. }
  2745. /*FI]*/
  2746. }
  2747. /*FI]*/
  2748. }
  2749. /*FI]*/
  2750. return R;
  2751. }
  2752.  
  2753.  
  2754. void r193make(T193* C,T0* a1,T68 a2,T0* a3){
  2755. (/*SFN*/C->_target)=a1;
  2756. {T129*n=((T129*)malloc(sizeof(*n))/*20*/);
  2757. *n=M129;
  2758. r129make(n,r193operator(),a2);
  2759. (/*SFN*/C->_feature_name)=((T0*)n);
  2760. }
  2761. {T139*n=((T139*)malloc(sizeof(*n))/*16*/);
  2762. *n=M139;
  2763. /*[IRF3.3make_1*/((((T139*)(n)))->_first_one)=(a3);
  2764. /*]*/
  2765. (/*SFN*/C->_arguments)=((T0*)n);
  2766. }
  2767. }
  2768.  
  2769.  
  2770. void r193fatal_error(T0* a1){
  2771. /*[IRF3.6append*/{T0* b1=a1;
  2772. r7append((T7*)(oBC66explanation),b1);
  2773. }/*]*/
  2774. r66print_as_fatal_error((T66*)(oBC13eh));
  2775. }
  2776.  
  2777.  
  2778. void r193assertion_check(T193* C,T3 a1){
  2779. /*[IF*/
  2780. if((a1)==(((T3)'R'))){
  2781. X334vape_check_from((/*RF2*/(C)->_run_feature/*16*/),/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/);
  2782. }
  2783. /*FI]*/
  2784. X104assertion_check((/*RF2*/(C)->_target/*4*/),a1);
  2785. X104assertion_check(r193arg1(C),a1);
  2786. }
  2787.  
  2788.  
  2789. void r193compile_to_c(T193* C){
  2790. /*[IF*/
  2791. if((r47boost((T47*)(oBC13run_control)))&&(X52is_character(X52run_type(X104result_type((/*RF2*/(C)->_target/*4*/)))))){
  2792. r193c2c_cast_op(C,((T0*)ms14_10800),((T0*)ms15_62));
  2793. }
  2794. else{
  2795. /*[IRF3.6call_proc_call_c2c*/{T193* C1=C;
  2796. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2797. }/*]*/
  2798. }
  2799. /*FI]*/
  2800. }
  2801.  
  2802.  
  2803. T6 r193stupid_switch(T193* C,T0* a1){
  2804. T6 R=0;
  2805. R=r193call_proc_call_stupid_switch(C,a1);
  2806. /*[IF*/
  2807. if(R){
  2808. R=!(X52is_native_array(r193result_type(C)));
  2809. }
  2810. /*FI]*/
  2811. return R;
  2812. }
  2813.  
  2814.  
  2815. void r193c2c_cast_op(T193* C,T0* a1,T0* a2){
  2816. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2817. T3 b1=((T3)'\50');
  2818. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2819. }/*]*/
  2820. /*]*/
  2821. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2822. T3 b1=((T3)'\50');
  2823. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2824. }/*]*/
  2825. /*]*/
  2826. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2827. T3 b1=((T3)'\50');
  2828. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2829. }/*]*/
  2830. /*]*/
  2831. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a1);
  2832. /*]*/
  2833. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2834. T3 b1=((T3)'\51');
  2835. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2836. }/*]*/
  2837. /*]*/
  2838. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2839. T3 b1=((T3)'\50');
  2840. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2841. }/*]*/
  2842. /*]*/
  2843. X104compile_to_c((/*RF2*/(C)->_target/*4*/));
  2844. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2845. T3 b1=((T3)'\51');
  2846. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2847. }/*]*/
  2848. /*]*/
  2849. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2850. T3 b1=((T3)'\51');
  2851. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2852. }/*]*/
  2853. /*]*/
  2854. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  2855. /*]*/
  2856. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2857. T3 b1=((T3)'\50');
  2858. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2859. }/*]*/
  2860. /*]*/
  2861. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2862. T3 b1=((T3)'\50');
  2863. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2864. }/*]*/
  2865. /*]*/
  2866. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a1);
  2867. /*]*/
  2868. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2869. T3 b1=((T3)'\51');
  2870. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2871. }/*]*/
  2872. /*]*/
  2873. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2874. T3 b1=((T3)'\50');
  2875. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2876. }/*]*/
  2877. /*]*/
  2878. X104compile_to_c(r193arg1(C));
  2879. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2880. T3 b1=((T3)'\51');
  2881. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2882. }/*]*/
  2883. /*]*/
  2884. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2885. T3 b1=((T3)'\51');
  2886. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2887. }/*]*/
  2888. /*]*/
  2889. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2890. T3 b1=((T3)'\51');
  2891. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2892. }/*]*/
  2893. /*]*/
  2894. }
  2895.  
  2896.  
  2897. void r192compile_to_c_old(T192* C){
  2898. X104compile_to_c_old((/*RF2*/(C)->_target/*4*/));
  2899. /*[IF*/
  2900. {/*AT*//*SSPRF3*//*X139compile_to_c_old*/r139compile_to_c_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2901. }
  2902. /*FI]*/
  2903. }
  2904.  
  2905.  
  2906. T0* r192runnable_expression(T0* a1,T0* a2){
  2907. T0* R=NULL;
  2908. R=X104to_runnable(a1,a2);
  2909. /*[IF*/
  2910. if((R)==((void*)(NULL))){
  2911. {T68 se_tmp0;
  2912. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  2913. }
  2914. r192fatal_error(((T0*)ms116_16290));
  2915. }
  2916. /*FI]*/
  2917. return R;
  2918. }
  2919.  
  2920.  
  2921. void r192run_feature_has_result(T192* C){
  2922. /*[IF*/
  2923. if((X334result_type((/*RF2*/(C)->_run_feature/*16*/)))==((void*)(NULL))){
  2924. {T68 se_tmp0;
  2925. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*16*/)),&se_tmp0)));
  2926. }
  2927. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  2928. r192fatal_error(((T0*)ms115_53215));
  2929. }
  2930. /*FI]*/
  2931. }
  2932.  
  2933.  
  2934. void r192run_feature_match(T192* C,T0* a1){
  2935. r192run_feature_has_result(C);
  2936. X139match_with((/*RF2*/(C)->_arguments/*8*/),(/*RF2*/(C)->_run_feature/*16*/),a1);
  2937. }
  2938.  
  2939.  
  2940. T0* r192add_comment(T192* C,T0* a1){
  2941. T0* R=NULL;
  2942. /*[IF*/
  2943. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2944. R=((T0*)(C));
  2945. }
  2946. else{
  2947. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  2948. *n=M229;
  2949. r229make(n,(T0*)C,a1);
  2950. R=((T0*)n);
  2951. }
  2952. }
  2953. /*FI]*/
  2954. return R;
  2955. }
  2956.  
  2957.  
  2958. void r192with(T192* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  2959. (/*SFN*/C->_target)=a1;
  2960. (/*SFN*/C->_feature_name)=a2;
  2961. (/*SFN*/C->_arguments)=a3;
  2962. (/*SFN*/C->_run_feature)=a4;
  2963. r192run_feature_match(C,a5);
  2964. }
  2965.  
  2966.  
  2967. void r192mapping_c_target(T192* C,T0* a1){
  2968. T0* _actual_type=NULL;
  2969. T6 _flag=0;
  2970. _flag=r325call_invariant_start(a1);
  2971. _actual_type=X52run_type(r192result_type(C));
  2972. /*[IF*/
  2973. if(X52is_reference(_actual_type)){
  2974. /*[IF*/
  2975. if(X52is_reference(a1)){
  2976. X52mapping_cast(a1);
  2977. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2978. T3 b1=((T3)'\50');
  2979. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2980. }/*]*/
  2981. /*]*/
  2982. r192compile_to_c(C);
  2983. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2984. T3 b1=((T3)'\51');
  2985. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2986. }/*]*/
  2987. /*]*/
  2988. }
  2989. else{
  2990. r192compile_to_c(C);
  2991. }
  2992. /*FI]*/
  2993. }
  2994. else{
  2995. /*[IF*/
  2996. if(X52is_reference(a1)){
  2997. r192compile_to_c(C);
  2998. }
  2999. else{
  3000. /*[IF*/
  3001. if(X52need_c_struct(a1)){
  3002. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3003. T3 b1=((T3)'\46');
  3004. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3005. }/*]*/
  3006. /*]*/
  3007. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3008. T3 b1=((T3)'\50');
  3009. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3010. }/*]*/
  3011. /*]*/
  3012. r192compile_to_c(C);
  3013. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3014. T3 b1=((T3)'\51');
  3015. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3016. }/*]*/
  3017. /*]*/
  3018. }
  3019. else{
  3020. r192compile_to_c(C);
  3021. }
  3022. /*FI]*/
  3023. }
  3024. /*FI]*/
  3025. }
  3026. /*FI]*/
  3027. /*[IF*/
  3028. if(_flag){
  3029. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  3030. T3 b1=((T3)'\51');
  3031. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3032. }/*]*/
  3033. /*]*/
  3034. }
  3035. /*FI]*/
  3036. }
  3037.  
  3038.  
  3039. void r192afd_check(T192* C){
  3040. T0* _running=NULL;
  3041. T0* _rc=NULL;
  3042. /*[IF*/
  3043. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  3044. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  3045. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  3046. /*[IF*/
  3047. if((_running)==((void*)(NULL))){
  3048. }
  3049.  else if((r53count(((T53*)_running)))>(1)){
  3050. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*16*/));
  3051. }
  3052. /*FI]*/
  3053. }
  3054. /*FI]*/
  3055. X104afd_check((/*RF2*/(C)->_target/*4*/));
  3056. /*[IF*/
  3057. {/*AT*//*SSPRF3*//*X139afd_check*/r139afd_check((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3058. }
  3059. /*FI]*/
  3060. }
  3061.  
  3062.  
  3063. void r192c_declare_for_old(T192* C){
  3064. X104c_declare_for_old((/*RF2*/(C)->_target/*4*/));
  3065. /*[IF*/
  3066. {/*AT*//*SSPRF3*//*X139c_declare_for_old*/r139c_declare_for_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3067. }
  3068. /*FI]*/
  3069. }
  3070.  
  3071.  
  3072. void r192collect_c_tmp(T192* C){
  3073. /*[IF*/
  3074. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  3075. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*16*/));
  3076. }
  3077. /*FI]*/
  3078. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  3079. /*[IF*/
  3080. if(((/*RF2*/(C)->_arguments/*8*/))!=((void*)(NULL))){
  3081. /*SSPRF3*//*X139collect_c_tmp*/r139collect_c_tmp((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3082. }
  3083. /*FI]*/
  3084. }
  3085.  
  3086.  
  3087. T0* r192operator(void){
  3088. T0* R=NULL;
  3089. R=((T0*)ms15_60);
  3090. return R;
  3091. }
  3092.  
  3093.  
  3094. T6 r192use_current(T192* C){
  3095. T6 R=0;
  3096. /*[IF*/
  3097. {/*AT*/R=/*SSFRF4*//*X139use_current*/r139use_current((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3098. }
  3099. /*FI]*/
  3100. /*[IF*/
  3101. if(R){
  3102. }
  3103.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3104. R=X334use_current((/*RF2*/(C)->_run_feature/*16*/));
  3105. }
  3106. else{
  3107. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  3108. }
  3109. /*FI]*/
  3110. return R;
  3111. }
  3112.  
  3113.  
  3114. T0* r192runnable_args(T0* a1,T0* a2){
  3115. T0* R=NULL;
  3116. R=X139to_runnable(a1,a2);
  3117. /*[IF*/
  3118. if((R)==((void*)(NULL))){
  3119. {T68 se_tmp0;
  3120. r66add_position((*(se_tmp0=X139start_position(a1),&se_tmp0)));
  3121. }
  3122. r192fatal_error(((T0*)ms14_12870));
  3123. }
  3124. /*FI]*/
  3125. return R;
  3126. }
  3127.  
  3128.  
  3129. T0* r192to_runnable(T192* C,T0* a1){
  3130. T0* R=NULL;
  3131. T0* _target_type=NULL;
  3132. T0* _argument_type=NULL;
  3133. T0* _rf=NULL;
  3134. T0* _a=NULL;
  3135. T0* _t=NULL;
  3136. _t=r192runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  3137. _a=r192runnable_args((/*RF2*/(C)->_arguments/*8*/),a1);
  3138. _target_type=X104result_type(_t);
  3139. _argument_type=X104result_type(r192arg1(C));
  3140. /*[IF*/
  3141. if(X52is_real(_argument_type)){
  3142. /*[IF*/
  3143. if(X52is_integer(_target_type)){
  3144. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  3145. }
  3146. /*FI]*/
  3147. }
  3148.  else if(X52is_double(_argument_type)){
  3149. /*[IF*/
  3150. if((X52is_integer(_target_type))||(X52is_real(_target_type))){
  3151. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  3152. }
  3153. /*FI]*/
  3154. }
  3155. /*FI]*/
  3156. _rf=r192run_feature_for(C,_t,a1);
  3157. /*[IF*/
  3158. if(((/*RF2*/(C)->_run_feature/*16*/))==((void*)(NULL))){
  3159. (/*SFN*/C->_target)=_t;
  3160. (/*SFN*/C->_arguments)=_a;
  3161. (/*SFN*/C->_run_feature)=_rf;
  3162. r192run_feature_match(C,a1);
  3163. R=((T0*)(C));
  3164. }
  3165.  else if(((_t)==((void*)((/*RF2*/(C)->_target/*4*/))))&&((_a)==((void*)((/*RF2*/(C)->_arguments/*8*/))))){
  3166. R=((T0*)(C));
  3167. }
  3168. else{
  3169. {T192*n=((T192*)malloc(sizeof(*n))/*24*/);
  3170. *n=M192;
  3171. r192with(n,_t,(/*RF2*/(C)->_feature_name/*12*/),_a,_rf,a1);
  3172. R=((T0*)n);
  3173. }
  3174. }
  3175. /*FI]*/
  3176. return R;
  3177. }
  3178.  
  3179.  
  3180. T2 r192to_integer(T192* C){
  3181. T2 R=0;
  3182. r192error(/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/,((T0*)ms14_45441));
  3183. return R;
  3184. }
  3185.  
  3186.  
  3187. T6 r192is_static(T192* C){
  3188. T6 R=0;
  3189. /*[IF*/
  3190. if(X52is_integer(X104result_type((/*RF2*/(C)->_target/*4*/)))){
  3191. /*[IF*/
  3192. if((X104is_static((/*RF2*/(C)->_target/*4*/)))&&(X104is_static(r192arg1(C)))){
  3193. R=1;
  3194. /*[IF*/
  3195. if((X104static_value((/*RF2*/(C)->_target/*4*/)))<(X104static_value(r192arg1(C)))){
  3196. (/*SFN*/C->_static_value_mem)=1;
  3197. }
  3198. else{
  3199. (/*SFN*/C->_static_value_mem)=0;
  3200. }
  3201. /*FI]*/
  3202. }
  3203. /*FI]*/
  3204. }
  3205. /*FI]*/
  3206. return R;
  3207. }
  3208.  
  3209.  
  3210. void r192finalize(T192* C){
  3211. T0* _rf=NULL;
  3212. T0* _rc=NULL;
  3213. _rf=(/*RF2*/(C)->_run_feature/*16*/);
  3214. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  3215. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  3216. }
  3217.  
  3218.  
  3219. void r192error(T68 a1,T0* a2){
  3220. r66add_position(a1);
  3221. /*[IRF3.6append*/{T0* b1=a2;
  3222. r7append((T7*)(oBC66explanation),b1);
  3223. }/*]*/
  3224. r66print_as_error((T66*)(oBC13eh));
  3225. }
  3226.  
  3227.  
  3228. T0* r192result_type(T192* C){
  3229. T0* R=NULL;
  3230. T0* _tla=NULL;
  3231. R=X334result_type((/*RF2*/(C)->_run_feature/*16*/));
  3232. /*[IF*/
  3233. if(X52is_like_current(R)){
  3234. R=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*16*/)))->_current_type/*8*/);
  3235. }
  3236. else{
  3237. _tla=R;
  3238. if(NULL!=(_tla)){
  3239. switch(((T0*)_tla)->id){
  3240. case 257:
  3241. break;
  3242. default:
  3243. _tla=NULL;
  3244. }
  3245. }/*[IF*/
  3246. if((_tla)!=((void*)(NULL))){
  3247. R=X52run_type(X104result_type(r192arg1(C)));
  3248. }
  3249. /*FI]*/
  3250. }
  3251. /*FI]*/
  3252. return R;
  3253. }
  3254.  
  3255.  
  3256. T0* r192arg1(T192* C){
  3257. T0* R=NULL;
  3258. R=/*SSFRF4*//*X139first*//*(IRF4.3first*/(/*RF2*/((T139*)((/*RF2*/(C)->_arguments/*8*/)))->_first_one/*4*/)/*)*/;
  3259. return R;
  3260. }
  3261.  
  3262.  
  3263. T6 r192call_proc_call_stupid_switch(T192* C,T0* a1){
  3264. T6 R=0;
  3265. /*[IF*/
  3266. if(((/*RF2*/(C)->_arguments/*8*/))==((void*)(NULL))){
  3267. R=1;
  3268. }
  3269. else{
  3270. R=/*SSFRF4*//*X139stupid_switch*/r139stupid_switch((T139*)((/*RF2*/(C)->_arguments/*8*/)),a1);
  3271. }
  3272. /*FI]*/
  3273. /*[IF*/
  3274. if(R){
  3275. /*[IF*/
  3276. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3277. /*[IF*/
  3278. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*16*/),a1)){
  3279. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*16*/),a1))!=((void*)(NULL));
  3280. }
  3281. else{
  3282. R=0;
  3283. }
  3284. /*FI]*/
  3285. }
  3286. else{
  3287. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  3288. }
  3289. /*FI]*/
  3290. }
  3291. /*FI]*/
  3292. return R;
  3293. }
  3294.  
  3295.  
  3296. T0* r192run_feature_for(T192* C,T0* a1,T0* a2){
  3297. T0* R=NULL;
  3298. T0* _bc=NULL;
  3299. T0* _rt=NULL;
  3300. T0* _rc=NULL;
  3301. _rt=X104result_type(a1);
  3302. /*[IF*/
  3303. if((_rt)!=((void*)(NULL))){
  3304. _rc=X52run_class(_rt);
  3305. /*[IF*/
  3306. if((_rc)!=((void*)(NULL))){
  3307. _bc=r50base_class(((T50*)_rc));
  3308. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*12*/),a2);
  3309. }
  3310. /*FI]*/
  3311. }
  3312. /*FI]*/
  3313. /*[IF*/
  3314. if((R)==((void*)(NULL))){
  3315. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  3316. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  3317. r7append((T7*)(oBC66explanation),b1);
  3318. }/*]*/
  3319. r66print_as_fatal_error((T66*)(oBC13eh));
  3320. }
  3321. /*FI]*/
  3322. return R;
  3323. }
  3324.  
  3325.  
  3326. T0* r192static_result_base_class(T192* C){
  3327. T0* R=NULL;
  3328. T0* _cn=NULL;
  3329. T0* _rt=NULL;
  3330. T0* _e_feature=NULL;
  3331. T0* _bc=NULL;
  3332. _bc=X104static_result_base_class((/*RF2*/(C)->_target/*4*/));
  3333. /*[IF*/
  3334. if((_bc)!=((void*)(NULL))){
  3335. _e_feature=r51e_feature(((T51*)_bc),(/*RF2*/(C)->_feature_name/*12*/));
  3336. /*[IF*/
  3337. if((_e_feature)!=((void*)(NULL))){
  3338. _rt=X90result_type(_e_feature);
  3339. /*[IF*/
  3340. if((_rt)!=((void*)(NULL))){
  3341. _cn=X52static_base_class_name(_rt);
  3342. /*[IF*/
  3343. if((_cn)!=((void*)(NULL))){
  3344. R=r61base_class(((T61*)_cn));
  3345. }
  3346. /*FI]*/
  3347. }
  3348. /*FI]*/
  3349. }
  3350. /*FI]*/
  3351. }
  3352. /*FI]*/
  3353. return R;
  3354. }
  3355.  
  3356.  
  3357. void r192make(T192* C,T0* a1,T68 a2,T0* a3){
  3358. (/*SFN*/C->_target)=a1;
  3359. {T129*n=((T129*)malloc(sizeof(*n))/*20*/);
  3360. *n=M129;
  3361. r129make(n,r192operator(),a2);
  3362. (/*SFN*/C->_feature_name)=((T0*)n);
  3363. }
  3364. {T139*n=((T139*)malloc(sizeof(*n))/*16*/);
  3365. *n=M139;
  3366. /*[IRF3.3make_1*/((((T139*)(n)))->_first_one)=(a3);
  3367. /*]*/
  3368. (/*SFN*/C->_arguments)=((T0*)n);
  3369. }
  3370. }
  3371.  
  3372.  
  3373. void r192fatal_error(T0* a1){
  3374. /*[IRF3.6append*/{T0* b1=a1;
  3375. r7append((T7*)(oBC66explanation),b1);
  3376. }/*]*/
  3377. r66print_as_fatal_error((T66*)(oBC13eh));
  3378. }
  3379.  
  3380.  
  3381. void r192assertion_check(T192* C,T3 a1){
  3382. /*[IF*/
  3383. if((a1)==(((T3)'R'))){
  3384. X334vape_check_from((/*RF2*/(C)->_run_feature/*16*/),/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/);
  3385. }
  3386. /*FI]*/
  3387. X104assertion_check((/*RF2*/(C)->_target/*4*/),a1);
  3388. X104assertion_check(r192arg1(C),a1);
  3389. }
  3390.  
  3391.  
  3392. void r192compile_to_c(T192* C){
  3393. /*[IF*/
  3394. if((r47boost((T47*)(oBC13run_control)))&&(X52is_character(X52run_type(X104result_type((/*RF2*/(C)->_target/*4*/)))))){
  3395. r192c2c_cast_op(C,((T0*)ms14_10800),((T0*)ms15_60));
  3396. }
  3397. else{
  3398. /*[IRF3.6call_proc_call_c2c*/{T192* C1=C;
  3399. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3400. }/*]*/
  3401. }
  3402. /*FI]*/
  3403. }
  3404.  
  3405.  
  3406. T6 r192stupid_switch(T192* C,T0* a1){
  3407. T6 R=0;
  3408. R=r192call_proc_call_stupid_switch(C,a1);
  3409. /*[IF*/
  3410. if(R){
  3411. R=!(X52is_native_array(r192result_type(C)));
  3412. }
  3413. /*FI]*/
  3414. return R;
  3415. }
  3416.  
  3417.  
  3418. void r192c2c_cast_op(T192* C,T0* a1,T0* a2){
  3419. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3420. T3 b1=((T3)'\50');
  3421. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3422. }/*]*/
  3423. /*]*/
  3424. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3425. T3 b1=((T3)'\50');
  3426. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3427. }/*]*/
  3428. /*]*/
  3429. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3430. T3 b1=((T3)'\50');
  3431. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3432. }/*]*/
  3433. /*]*/
  3434. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a1);
  3435. /*]*/
  3436. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3437. T3 b1=((T3)'\51');
  3438. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3439. }/*]*/
  3440. /*]*/
  3441. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3442. T3 b1=((T3)'\50');
  3443. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3444. }/*]*/
  3445. /*]*/
  3446. X104compile_to_c((/*RF2*/(C)->_target/*4*/));
  3447. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3448. T3 b1=((T3)'\51');
  3449. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3450. }/*]*/
  3451. /*]*/
  3452. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3453. T3 b1=((T3)'\51');
  3454. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3455. }/*]*/
  3456. /*]*/
  3457. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  3458. /*]*/
  3459. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3460. T3 b1=((T3)'\50');
  3461. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3462. }/*]*/
  3463. /*]*/
  3464. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3465. T3 b1=((T3)'\50');
  3466. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3467. }/*]*/
  3468. /*]*/
  3469. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a1);
  3470. /*]*/
  3471. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3472. T3 b1=((T3)'\51');
  3473. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3474. }/*]*/
  3475. /*]*/
  3476. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3477. T3 b1=((T3)'\50');
  3478. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3479. }/*]*/
  3480. /*]*/
  3481. X104compile_to_c(r192arg1(C));
  3482. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3483. T3 b1=((T3)'\51');
  3484. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3485. }/*]*/
  3486. /*]*/
  3487. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3488. T3 b1=((T3)'\51');
  3489. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3490. }/*]*/
  3491. /*]*/
  3492. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3493. T3 b1=((T3)'\51');
  3494. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3495. }/*]*/
  3496. /*]*/
  3497. }
  3498.  
  3499.  
  3500. void r48disconnect(T48* C){
  3501. fclose((/*RF2*/(C)->_output_stream/*4*/));
  3502. (/*SFN*/C->_path)=NULL;
  3503. }
  3504.  
  3505.  
  3506. void r48put_string(T48* C,T0* a1){
  3507. T2 _i=0;
  3508. _i=1;
  3509. while (!((_i)>((/*RF2*/(((T7*)a1))->_count/*4*/))))
  3510. {
  3511. /*[IRF3.6put_character*/{T48* C1=C;
  3512. T3 b1=/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/;
  3513. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3514. }/*]*/
  3515. _i=(_i)+(1);
  3516. }
  3517. }
  3518.  
  3519.  
  3520. void r48put_integer(T48* C,T2 a1){
  3521. /*[IRF3.3clear*/((((T7*)((T7*)(oBC37tmp_string))))->_count)=(0);
  3522. /*]*/
  3523. r2append_in(a1,oBC37tmp_string);
  3524. r48put_string(C,oBC37tmp_string);
  3525. }
  3526.  
  3527.  
  3528. void r48connect_to(T48* C,T0* a1){
  3529. T8 _p=NULL;
  3530. _p=r7to_external(((T7*)a1));
  3531. (/*SFN*/C->_output_stream)=fopen((char*)_p,"w");
  3532. /*[IF*/
  3533. if((NULL!=(/*RF2*/(C)->_output_stream/*4*/))){
  3534. (/*SFN*/C->_path)=a1;
  3535. }
  3536. /*FI]*/
  3537. }
  3538.  
  3539.  
  3540. void r376make(T376* C,T0* a1){
  3541. {T377*n=((T377*)malloc(sizeof(*n))/*16*/);
  3542. *n=M377;
  3543. r377with_capacity(n,4,1);
  3544. (/*SFN*/C->_list)=((T0*)n);
  3545. }
  3546. r377add_last((T377*)((/*RF2*/(C)->_list/*0*/)),a1);
  3547. }
  3548.  
  3549.  
  3550. void r376add(T376* C,T0* a1){
  3551. T0* _bc2=NULL;
  3552. T0* _bc=NULL;
  3553. T0* _r2=NULL;
  3554. T2 _i=0;
  3555. r377add_last((T377*)((/*RF2*/(C)->_list/*0*/)),a1);
  3556. _bc=(/*RF2*/((/*RF2*/(((T286*)a1))->_start_position/*0*/))._base_class/*0*/);
  3557. _i=(/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/);
  3558. while (!((_i)==(1)))
  3559. {
  3560. _r2=r377item((T377*)((/*RF2*/(C)->_list/*0*/)),(_i)-(1));
  3561. _bc2=(/*RF2*/((/*RF2*/(((T286*)_r2))->_start_position/*0*/))._base_class/*0*/);
  3562. /*[IF*/
  3563. if(r51is_subclass_of(((T51*)_bc),_bc2)){
  3564. r377swap((T377*)((/*RF2*/(C)->_list/*0*/)),_i,(_i)-(1));
  3565. _i=(_i)-(1);
  3566. }
  3567. else{
  3568. _i=1;
  3569. }
  3570. /*FI]*/
  3571. }
  3572. }
  3573.  
  3574.  
  3575. void r376afd_check(T376* C){
  3576. T2 _i=0;
  3577. _i=(/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/);
  3578. while (!((_i)==(0)))
  3579. {
  3580. r286afd_check((T286*)(r377item((T377*)((/*RF2*/(C)->_list/*0*/)),_i)));
  3581. _i=(_i)-(1);
  3582. }
  3583. }
  3584.  
  3585.  
  3586. void r376compile_to_c(T376* C){
  3587. T2 _i=0;
  3588. /*[IF*/
  3589. if(((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))==(1)){
  3590. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms376_23664));
  3591. /*]*/
  3592. r286compile_to_c((T286*)(/*(IRF4.6first*/((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_storage/*0*/))[0]/*)*/));
  3593. }
  3594. else{
  3595. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms376_59180));
  3596. /*]*/
  3597. r286compile_to_c((T286*)(/*(IRF4.6first*/((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_storage/*0*/))[0]/*)*/));
  3598. _i=2;
  3599. while (!((_i)>((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))))
  3600. {
  3601. /*[IF*/
  3602. if((_i)==((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))){
  3603. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms376_23664a));
  3604. /*]*/
  3605. }
  3606. /*FI]*/
  3607. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms376_51975));
  3608. /*]*/
  3609. r286compile_to_c((T286*)(r377item((T377*)((/*RF2*/(C)->_list/*0*/)),_i)));
  3610. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_270a));
  3611. /*]*/
  3612. _i=(_i)+(1);
  3613. }
  3614. }
  3615. /*FI]*/
  3616. }
  3617.  
  3618.  
  3619. T6 r376use_current(T376* C){
  3620. T6 R=0;
  3621. T2 _i=0;
  3622. _i=1;
  3623. while (!((R)||((_i)>((/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/)))))
  3624. {
  3625. R=r286use_current((T286*)(r377item((T377*)((/*RF2*/(C)->_list/*0*/)),_i)));
  3626. _i=(_i)+(1);
  3627. }
  3628. return R;
  3629. }
  3630.  
  3631.  
  3632. void r376clear_run_feature(T376* C){
  3633. T2 _i=0;
  3634. _i=(/*RF2*/((T377*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/);
  3635. while (!((_i)==(0)))
  3636. {
  3637. /*[IRF3.3clear_run_feature*/((((T286*)((T286*)(r377item((T377*)((/*RF2*/(C)->_list/*0*/)),_i)))))->_run_feature)=(NULL);
  3638. /*]*/
  3639. _i=(_i)-(1);
  3640. }
  3641. }
  3642.  
  3643.  
  3644. void r260standard_c_object_model(T260* C){
  3645. T0* _rc=NULL;
  3646. T2 _mem_id=0;
  3647. _rc=r260run_class(C);
  3648. _mem_id=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  3649. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3650. /*]*/
  3651. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  3652. r2append_in(_mem_id,((T0*)ms52_783104));
  3653. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3654. r7extend((T7*)(((T0*)ms52_783104)),((T3)'M'));
  3655. r2append_in(_mem_id,((T0*)ms52_783104));
  3656. r325put_extern7((T325*)(oBC13cpp),((T0*)ms52_783104));
  3657. /*[IRF3.3swap_on_c*/((((T325*)((T325*)(oBC13cpp))))->_current_out)=(oBC325out_c);
  3658. /*]*/
  3659. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3660. /*]*/
  3661. r50c_object_model_in(((T50*)_rc),((T0*)ms52_783104));
  3662. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3663. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3664. /*]*/
  3665. r325swap_on_h((T325*)(oBC13cpp));
  3666. }
  3667.  
  3668.  
  3669. void r260gc_free_in(T260* C,T0* a1){
  3670. r7append(((T7*)a1),((T0*)ms52_8540));
  3671. r2append_in(r260id(C),a1);
  3672. }
  3673.  
  3674.  
  3675. void r260standard_gc_info_in(T260* C,T0* a1){
  3676. r7append(((T7*)a1),((T0*)ms52_22591a));
  3677. r7append(((T7*)a1),r260run_time_mark(C));
  3678. r7append(((T7*)a1),((T0*)ms14_5895));
  3679. r260gc_info_nb_in(C,a1);
  3680. r7append(((T7*)a1),((T0*)ms14_330));
  3681. r7append(((T7*)a1),((T0*)ms52_22591));
  3682. r260gc_store_left_in(C,a1);
  3683. r7append(((T7*)a1),((T0*)ms14_5895));
  3684. r260gc_store_left_in(C,a1);
  3685. r7append(((T7*)a1),((T0*)ms14_330));
  3686. }
  3687.  
  3688.  
  3689. void r260standard_c_print_function(T260* C){
  3690. /*[IF*/
  3691. if(r47no_check((T47*)(oBC13run_control))){
  3692. r50c_print_function((T50*)(r260run_class(C)));
  3693. }
  3694. /*FI]*/
  3695. }
  3696.  
  3697.  
  3698. T2 r260id(T260* C){
  3699. T2 R=0;
  3700. R=(/*RF2*/((T50*)(r260run_class(C)))->_id/*4*/);
  3701. return R;
  3702. }
  3703.  
  3704.  
  3705. void r260cast_to_ref(T260* C){
  3706. X52cast_to_ref(r260run_type(C));
  3707. }
  3708.  
  3709.  
  3710. void r260gc_call_new_in(T260* C,T0* a1){
  3711. r7append(((T7*)a1),((T0*)ms14_990));
  3712. r2append_in(r260id(C),a1);
  3713. r7extend(((T7*)a1),((T3)'\50'));
  3714. r7extend(((T7*)a1),((T3)'\51'));
  3715. }
  3716.  
  3717.  
  3718. void r260standard_c_struct(T260* C){
  3719. T0* _t=NULL;
  3720. T0* _a=NULL;
  3721. T2 _mem_id=0;
  3722. T2 _i=0;
  3723. T0* _wa=NULL;
  3724. _mem_id=r260id(C);
  3725. _wa=r50writable_attributes((T50*)(r260run_class(C)));
  3726. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  3727. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  3728. r2append_in(_mem_id,((T0*)ms52_783104));
  3729. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\173'));
  3730. /*[IF*/
  3731. {/*AT*//*[IF*/
  3732. if(r50is_tagged((T50*)(r260run_class(C)))){
  3733. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms52_5873));
  3734. }
  3735. /*FI]*/
  3736. }
  3737. /*FI]*/
  3738. /*[IF*/
  3739. if((_wa)!=((void*)(NULL))){
  3740. _i=(/*RF2*/(((T346*)_wa))->_upper/*12*/);
  3741. while (!((_i)==(0)))
  3742. {
  3743. _a=r346item(((T346*)_wa),_i);
  3744. _t=X52run_type((/*RF2*/(((T345*)_a))->_result_type/*28*/));
  3745. X52c_type_for_result_in(_t,((T0*)ms52_783104));
  3746. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3747. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\137'));
  3748. r7append((T7*)(((T0*)ms52_783104)),X82to_string((/*RF2*/(((T345*)_a))->_name/*12*/)));
  3749. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\73'));
  3750. _i=(_i)-(1);
  3751. }
  3752. }
  3753. /*FI]*/
  3754. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\175'));
  3755. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3756. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3757. /*]*/
  3758. /*[IF*/
  3759. /*AF*//*AE*/
  3760. /*FI]*/
  3761. }
  3762.  
  3763.  
  3764. T0* r260base_class(T260* C){
  3765. T0* R=NULL;
  3766. T0* _bcn=NULL;
  3767. _bcn=(/*RF2*/(C)->_base_class_name/*4*/);
  3768. /*[IF*/
  3769. if((_bcn)!=((void*)(NULL))){
  3770. R=r61base_class(((T61*)_bcn));
  3771. }
  3772. else{
  3773. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  3774. r7append((T7*)(oBC66explanation),b1);
  3775. }/*]*/
  3776. r66add_type((T0*)C,((T0*)ms14_46));
  3777. r66print_as_fatal_error((T66*)(oBC13eh));
  3778. }
  3779. /*FI]*/
  3780. return R;
  3781. }
  3782.  
  3783.  
  3784. void r260gc_store_chunk_in(T260* C,T0* a1){
  3785. r7append(((T7*)a1),((T0*)ms52_19074));
  3786. r2append_in(r260id(C),a1);
  3787. }
  3788.  
  3789.  
  3790. T0* r260look_up_for(T260* C,T0* a1,T0* a2){
  3791. T0* R=NULL;
  3792. R=r51look_up_for((T51*)(r260base_class(C)),a1,a2);
  3793. return R;
  3794. }
  3795.  
  3796.  
  3797. T6 r260has_creation(T260* C,T0* a1){
  3798. T6 R=0;
  3799. /*[IF*/
  3800. if((C)==((void*)(r260run_type(C)))){
  3801. R=r51has_creation((T51*)(r260base_class(C)),a1);
  3802. }
  3803. else{
  3804. R=X52has_creation(r260run_type(C),a1);
  3805. }
  3806. /*FI]*/
  3807. return R;
  3808. }
  3809.  
  3810.  
  3811. void r260mapping_cast(T260* C){
  3812. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_15456)))))->_count)=(0);
  3813. /*]*/
  3814. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\50'));
  3815. r260c_type_for_target_in(C,((T0*)ms52_15456));
  3816. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\51'));
  3817. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_15456));
  3818. /*]*/
  3819. }
  3820.  
  3821.  
  3822. void r260gc_align_mark_in(T260* C,T0* a1){
  3823. r7append(((T7*)a1),((T0*)ms52_24609));
  3824. r2append_in(r260id(C),a1);
  3825. }
  3826.  
  3827.  
  3828. T6 r260is_a_in(T260* C,T0* a1,T0* a2){
  3829. T6 R=0;
  3830. T0* _ct=NULL;
  3831. T0* _t2=NULL;
  3832. T0* _t1=NULL;
  3833. /*[IF*/
  3834. if(((/*RF2*/(C)->_written_mark/*12*/))==((void*)(X52written_mark(a1)))){
  3835. R=1;
  3836. }
  3837. else{
  3838. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  3839. _t1=r260to_runnable(C,_ct);
  3840. _t2=X52to_runnable(a1,_ct);
  3841. /*[IF*/
  3842. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  3843. R=1;
  3844. }
  3845. else{
  3846. R=X52is_a(_t1,_t2);
  3847. }
  3848. /*FI]*/
  3849. }
  3850. /*FI]*/
  3851. return R;
  3852. }
  3853.  
  3854.  
  3855. void r260standard_c_typedef(T260* C){
  3856. T2 _mem_id=0;
  3857. _mem_id=r260id(C);
  3858. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3859. /*]*/
  3860. /*[IF*/
  3861. {/*AT*/r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  3862. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  3863. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  3864. r2append_in(_mem_id,((T0*)ms52_783104));
  3865. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3866. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  3867. r2append_in(_mem_id,((T0*)ms52_783104));
  3868. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3869. }
  3870. /*FI]*/
  3871. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3872. /*]*/
  3873. }
  3874.  
  3875.  
  3876. T6 r260is_native_array(T260* C){
  3877. T6 R=0;
  3878. T0* _tna=NULL;
  3879. _tna=NULL;
  3880. R=(_tna)!=((void*)(NULL));
  3881. return R;
  3882. }
  3883.  
  3884.  
  3885. T6 r260is_a(T260* C,T0* a1){
  3886. T6 R=0;
  3887. /*[IF*/
  3888. if(X52is_array(a1)){
  3889. R=X52is_a(/*(IRF4.6array_of*//*(IRF4.6first*/((/*RF2*/(((T258*)((/*RF2*/(C)->_generic_list/*8*/))))->_storage/*0*/))[0]/*)*//*)*/,/*(IRF4.6first*/((/*RF2*/((T258*)(X52generic_list(a1)))->_storage/*0*/))[0]/*)*/);
  3890. /*[IF*/
  3891. if(!(R)){
  3892. /*[IRF3.6extend*/{T3 b1=((T3)'\40');
  3893. r7extend((T7*)(oBC66explanation),b1);
  3894. }/*]*/
  3895. }
  3896. /*FI]*/
  3897. }
  3898.  else if(r51is_subclass_of((T51*)(r260base_class(C)),X52base_class(a1))){
  3899. /*[IF*/
  3900. if(X52is_generic(a1)){
  3901. R=r51is_a_vncg((T51*)(r260base_class(C)),(T0*)C,a1);
  3902. }
  3903. else{
  3904. R=1;
  3905. }
  3906. /*FI]*/
  3907. }
  3908. /*FI]*/
  3909. /*[IF*/
  3910. if(!(R)){
  3911. r66add_type((T0*)C,((T0*)ms14_17460));
  3912. r66add_type(a1,((T0*)ms14_46));
  3913. }
  3914. /*FI]*/
  3915. return R;
  3916. }
  3917. T0*oBC260tmp_written_mark=NULL;
  3918.  
  3919.  
  3920. void r260make(T260* C,T68 a1,T0* a2){
  3921. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  3922. *n=M61;
  3923. r61make(n,((T0*)ms15_1915),a1);
  3924. (/*SFN*/C->_base_class_name)=((T0*)n);
  3925. }
  3926. r260set_generic_list_with(C,a2);
  3927. r7copy((T7*)(oBC260tmp_written_mark),((T0*)ms15_1915));
  3928. r7extend((T7*)(oBC260tmp_written_mark),((T3)'\133'));
  3929. r7append((T7*)(oBC260tmp_written_mark),X52written_mark(a2));
  3930. r7extend((T7*)(oBC260tmp_written_mark),((T3)'\135'));
  3931. (/*SFN*/C->_written_mark)=((/*UT*/(void)((T21*)(r260string_aliaser()))),r21item(oBC260tmp_written_mark));
  3932. }
  3933.  
  3934.  
  3935. void r260gc_store_left_in(T260* C,T0* a1){
  3936. r7append(((T7*)a1),((T0*)ms52_17170));
  3937. r2append_in(r260id(C),a1);
  3938. }
  3939.  
  3940.  
  3941. T0* r260run_type(T260* C){
  3942. T0* R=NULL;
  3943. /*[IF*/
  3944. if(r260is_run_type(C)){
  3945. R=(/*RF2*/(C)->_run_type_memory/*16*/);
  3946. }
  3947. /*FI]*/
  3948. return R;
  3949. }
  3950.  
  3951.  
  3952. T2 r260c_sizeof_pointer(void){
  3953. T2 R=0;
  3954. T8 _p=NULL;
  3955. R=sizeof(T8);
  3956. return R;
  3957. }
  3958.  
  3959.  
  3960. void r260load_basic_features(T260* C){
  3961. T0* _rc=NULL;
  3962. T0* _rf=NULL;
  3963. T0* _et=NULL;
  3964. _et=/*(IRF4.6array_of*//*(IRF4.6first*/((/*RF2*/(((T258*)((/*RF2*/(C)->_generic_list/*8*/))))->_storage/*0*/))[0]/*)*//*)*/;
  3965. /*[IF*/
  3966. if(X52is_expanded(_et)){
  3967. r50set_at_run_time((T50*)(X52run_class(_et)));
  3968. }
  3969. /*FI]*/
  3970. _rc=r260run_class(C);
  3971. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_11776));
  3972. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_2765));
  3973. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_2780));
  3974. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_8820));
  3975. }
  3976.  
  3977.  
  3978. void r260set_generic_list_with(T260* C,T0* a1){
  3979. {T258*n=((T258*)malloc(sizeof(*n))/*16*/);
  3980. *n=M258;
  3981. r258make(n,1,1);
  3982. (/*SFN*/C->_generic_list)=((T0*)n);
  3983. }
  3984. /*[IRF3.6put*/{T258* C1=(T258*)((/*RF2*/(C)->_generic_list/*8*/));
  3985. T0* b1=a1;
  3986. T2 b2=1;
  3987. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3988. }/*]*/
  3989. }
  3990.  
  3991.  
  3992. T6 r260is_run_type(T260* C){
  3993. T6 R=0;
  3994. T0* _et=NULL;
  3995. /*[IF*/
  3996. if(((/*RF2*/(C)->_run_type_memory/*16*/))!=((void*)(NULL))){
  3997. R=1;
  3998. }
  3999. else{
  4000. _et=/*(IRF4.6array_of*//*(IRF4.6first*/((/*RF2*/(((T258*)((/*RF2*/(C)->_generic_list/*8*/))))->_storage/*0*/))[0]/*)*//*)*/;
  4001. /*[IF*/
  4002. if((X52is_run_type(_et))&&((X52run_type(_et))==((void*)(_et)))){
  4003. (/*SFN*/C->_run_type_memory)=((T0*)(C));
  4004. R=1;
  4005. }
  4006. /*FI]*/
  4007. }
  4008. /*FI]*/
  4009. return R;
  4010. }
  4011.  
  4012.  
  4013. T0* r260smallest_ancestor(T260* C,T0* a1){
  4014. T0* R=NULL;
  4015. T68 _unknown_position={NULL,0};
  4016. T0* _array_of3=NULL;
  4017. T0* _array_of2=NULL;
  4018. T0* _array_of1=NULL;
  4019. T0* _rto=NULL;
  4020. _rto=X52run_type(a1);
  4021. /*[IF*/
  4022. if(X52is_array(_rto)){
  4023. _array_of1=X52run_type(/*(IRF4.6array_of*//*(IRF4.6first*/((/*RF2*/(((T258*)((/*RF2*/(C)->_generic_list/*8*/))))->_storage/*0*/))[0]/*)*//*)*/);
  4024. _array_of2=/*(IRF4.6first*/((/*RF2*/((T258*)(X52generic_list(_rto)))->_storage/*0*/))[0]/*)*/;
  4025. _array_of3=X52smallest_ancestor(_array_of1,_array_of2);
  4026. /*[IF*/
  4027. if((_array_of3)==((void*)(_array_of1))){
  4028. R=((T0*)(C));
  4029. }
  4030.  else if((_array_of3)==((void*)(_array_of2))){
  4031. R=a1;
  4032. }
  4033. else{
  4034. {T260*n=((T260*)malloc(sizeof(*n))/*20*/);
  4035. *n=M260;
  4036. r260make(n,_unknown_position,_array_of3);
  4037. R=((T0*)n);
  4038. }
  4039. }
  4040. /*FI]*/
  4041. }
  4042. else{
  4043. R=X52smallest_ancestor(_rto,(T0*)C);
  4044. }
  4045. /*FI]*/
  4046. return R;
  4047. }
  4048.  
  4049.  
  4050. T0* r260string_aliaser(void){
  4051. if(fBC13string_aliaser==0){fBC13string_aliaser=1;{
  4052. {T21*n=((T21*)malloc(1));
  4053. oBC13string_aliaser=((T0*)n);
  4054. /*[IRF3.2make*//*[IRF3.6add1*/{T0* b1=((T0*)ms15_696);
  4055. r23put((T23*)(oBC21memory),b1,b1);
  4056. }/*]*/
  4057. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1915);
  4058. r23put((T23*)(oBC21memory),b1,b1);
  4059. }/*]*/
  4060. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_669);
  4061. r23put((T23*)(oBC21memory),b1,b1);
  4062. }/*]*/
  4063. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1980);
  4064. r23put((T23*)(oBC21memory),b1,b1);
  4065. }/*]*/
  4066. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9234);
  4067. r23put((T23*)(oBC21memory),b1,b1);
  4068. }/*]*/
  4069. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6405);
  4070. r23put((T23*)(oBC21memory),b1,b1);
  4071. }/*]*/
  4072. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12529);
  4073. r23put((T23*)(oBC21memory),b1,b1);
  4074. }/*]*/
  4075. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9801);
  4076. r23put((T23*)(oBC21memory),b1,b1);
  4077. }/*]*/
  4078. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16393);
  4079. r23put((T23*)(oBC21memory),b1,b1);
  4080. }/*]*/
  4081. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12550);
  4082. r23put((T23*)(oBC21memory),b1,b1);
  4083. }/*]*/
  4084. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4728);
  4085. r23put((T23*)(oBC21memory),b1,b1);
  4086. }/*]*/
  4087. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10740);
  4088. r23put((T23*)(oBC21memory),b1,b1);
  4089. }/*]*/
  4090. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12030);
  4091. r23put((T23*)(oBC21memory),b1,b1);
  4092. }/*]*/
  4093. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14817);
  4094. r23put((T23*)(oBC21memory),b1,b1);
  4095. }/*]*/
  4096. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6307);
  4097. r23put((T23*)(oBC21memory),b1,b1);
  4098. }/*]*/
  4099. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6643);
  4100. r23put((T23*)(oBC21memory),b1,b1);
  4101. }/*]*/
  4102. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12595);
  4103. r23put((T23*)(oBC21memory),b1,b1);
  4104. }/*]*/
  4105. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_5508);
  4106. r23put((T23*)(oBC21memory),b1,b1);
  4107. }/*]*/
  4108. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17448);
  4109. r23put((T23*)(oBC21memory),b1,b1);
  4110. }/*]*/
  4111. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1216);
  4112. r23put((T23*)(oBC21memory),b1,b1);
  4113. }/*]*/
  4114. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7928);
  4115. r23put((T23*)(oBC21memory),b1,b1);
  4116. }/*]*/
  4117. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6776);
  4118. r23put((T23*)(oBC21memory),b1,b1);
  4119. }/*]*/
  4120. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12804);
  4121. r23put((T23*)(oBC21memory),b1,b1);
  4122. }/*]*/
  4123. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1168);
  4124. r23put((T23*)(oBC21memory),b1,b1);
  4125. }/*]*/
  4126. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7576);
  4127. r23put((T23*)(oBC21memory),b1,b1);
  4128. }/*]*/
  4129. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4956);
  4130. r23put((T23*)(oBC21memory),b1,b1);
  4131. }/*]*/
  4132. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16692);
  4133. r23put((T23*)(oBC21memory),b1,b1);
  4134. }/*]*/
  4135. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19124);
  4136. r23put((T23*)(oBC21memory),b1,b1);
  4137. }/*]*/
  4138. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_921);
  4139. r23put((T23*)(oBC21memory),b1,b1);
  4140. }/*]*/
  4141. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10680);
  4142. r23put((T23*)(oBC21memory),b1,b1);
  4143. }/*]*/
  4144. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_64);
  4145. r23put((T23*)(oBC21memory),b1,b1);
  4146. }/*]*/
  4147. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_368);
  4148. r23put((T23*)(oBC21memory),b1,b1);
  4149. }/*]*/
  4150. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_61);
  4151. r23put((T23*)(oBC21memory),b1,b1);
  4152. }/*]*/
  4153. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_246);
  4154. r23put((T23*)(oBC21memory),b1,b1);
  4155. }/*]*/
  4156. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_62);
  4157. r23put((T23*)(oBC21memory),b1,b1);
  4158. }/*]*/
  4159. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9408);
  4160. r23put((T23*)(oBC21memory),b1,b1);
  4161. }/*]*/
  4162. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_242);
  4163. r23put((T23*)(oBC21memory),b1,b1);
  4164. }/*]*/
  4165. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60);
  4166. r23put((T23*)(oBC21memory),b1,b1);
  4167. }/*]*/
  4168. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_45);
  4169. r23put((T23*)(oBC21memory),b1,b1);
  4170. }/*]*/
  4171. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_42);
  4172. r23put((T23*)(oBC21memory),b1,b1);
  4173. }/*]*/
  4174. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_216);
  4175. r23put((T23*)(oBC21memory),b1,b1);
  4176. }/*]*/
  4177. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1011);
  4178. r23put((T23*)(oBC21memory),b1,b1);
  4179. }/*]*/
  4180. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_450);
  4181. r23put((T23*)(oBC21memory),b1,b1);
  4182. }/*]*/
  4183. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8211);
  4184. r23put((T23*)(oBC21memory),b1,b1);
  4185. }/*]*/
  4186. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_43);
  4187. r23put((T23*)(oBC21memory),b1,b1);
  4188. }/*]*/
  4189. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_94);
  4190. r23put((T23*)(oBC21memory),b1,b1);
  4191. }/*]*/
  4192. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_552);
  4193. r23put((T23*)(oBC21memory),b1,b1);
  4194. }/*]*/
  4195. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_564);
  4196. r23put((T23*)(oBC21memory),b1,b1);
  4197. }/*]*/
  4198. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_47);
  4199. r23put((T23*)(oBC21memory),b1,b1);
  4200. }/*]*/
  4201. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_188);
  4202. r23put((T23*)(oBC21memory),b1,b1);
  4203. }/*]*/
  4204. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_35);
  4205. r23put((T23*)(oBC21memory),b1,b1);
  4206. }/*]*/
  4207. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035a);
  4208. r23put((T23*)(oBC21memory),b1,b1);
  4209. }/*]*/
  4210. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11424);
  4211. r23put((T23*)(oBC21memory),b1,b1);
  4212. }/*]*/
  4213. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2600);
  4214. r23put((T23*)(oBC21memory),b1,b1);
  4215. }/*]*/
  4216. r21add2(((T0*)ms15_22524));
  4217. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6702);
  4218. r23put((T23*)(oBC21memory),b1,b1);
  4219. }/*]*/
  4220. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11776);
  4221. r23put((T23*)(oBC21memory),b1,b1);
  4222. }/*]*/
  4223. r21add2(((T0*)ms15_29246));
  4224. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13419);
  4225. r23put((T23*)(oBC21memory),b1,b1);
  4226. }/*]*/
  4227. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765a);
  4228. r23put((T23*)(oBC21memory),b1,b1);
  4229. }/*]*/
  4230. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1644);
  4231. r23put((T23*)(oBC21memory),b1,b1);
  4232. }/*]*/
  4233. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19294);
  4234. r23put((T23*)(oBC21memory),b1,b1);
  4235. }/*]*/
  4236. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1772);
  4237. r23put((T23*)(oBC21memory),b1,b1);
  4238. }/*]*/
  4239. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15070);
  4240. r23put((T23*)(oBC21memory),b1,b1);
  4241. }/*]*/
  4242. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15570);
  4243. r23put((T23*)(oBC21memory),b1,b1);
  4244. }/*]*/
  4245. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27034);
  4246. r23put((T23*)(oBC21memory),b1,b1);
  4247. }/*]*/
  4248. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15190);
  4249. r23put((T23*)(oBC21memory),b1,b1);
  4250. }/*]*/
  4251. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15890);
  4252. r23put((T23*)(oBC21memory),b1,b1);
  4253. }/*]*/
  4254. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19151);
  4255. r23put((T23*)(oBC21memory),b1,b1);
  4256. }/*]*/
  4257. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13491);
  4258. r23put((T23*)(oBC21memory),b1,b1);
  4259. }/*]*/
  4260. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_28490);
  4261. r23put((T23*)(oBC21memory),b1,b1);
  4262. }/*]*/
  4263. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8750);
  4264. r23put((T23*)(oBC21memory),b1,b1);
  4265. }/*]*/
  4266. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19437);
  4267. r23put((T23*)(oBC21memory),b1,b1);
  4268. }/*]*/
  4269. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824a);
  4270. r23put((T23*)(oBC21memory),b1,b1);
  4271. }/*]*/
  4272. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_23829);
  4273. r23put((T23*)(oBC21memory),b1,b1);
  4274. }/*]*/
  4275. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27272);
  4276. r23put((T23*)(oBC21memory),b1,b1);
  4277. }/*]*/
  4278. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10528);
  4279. r23put((T23*)(oBC21memory),b1,b1);
  4280. }/*]*/
  4281. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13707);
  4282. r23put((T23*)(oBC21memory),b1,b1);
  4283. }/*]*/
  4284. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6846);
  4285. r23put((T23*)(oBC21memory),b1,b1);
  4286. }/*]*/
  4287. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1664);
  4288. r23put((T23*)(oBC21memory),b1,b1);
  4289. }/*]*/
  4290. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2760);
  4291. r23put((T23*)(oBC21memory),b1,b1);
  4292. }/*]*/
  4293. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730a);
  4294. r23put((T23*)(oBC21memory),b1,b1);
  4295. }/*]*/
  4296. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22248);
  4297. r23put((T23*)(oBC21memory),b1,b1);
  4298. }/*]*/
  4299. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22788);
  4300. r23put((T23*)(oBC21memory),b1,b1);
  4301. }/*]*/
  4302. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_30660);
  4303. r23put((T23*)(oBC21memory),b1,b1);
  4304. }/*]*/
  4305. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13995);
  4306. r23put((T23*)(oBC21memory),b1,b1);
  4307. }/*]*/
  4308. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_432);
  4309. r23put((T23*)(oBC21memory),b1,b1);
  4310. }/*]*/
  4311. r21add2(((T0*)ms15_22596));
  4312. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60104);
  4313. r23put((T23*)(oBC21memory),b1,b1);
  4314. }/*]*/
  4315. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_24960);
  4316. r23put((T23*)(oBC21memory),b1,b1);
  4317. }/*]*/
  4318. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34432);
  4319. r23put((T23*)(oBC21memory),b1,b1);
  4320. }/*]*/
  4321. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11144);
  4322. r23put((T23*)(oBC21memory),b1,b1);
  4323. }/*]*/
  4324. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_18964);
  4325. r23put((T23*)(oBC21memory),b1,b1);
  4326. }/*]*/
  4327. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1724);
  4328. r23put((T23*)(oBC21memory),b1,b1);
  4329. }/*]*/
  4330. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1744);
  4331. r23put((T23*)(oBC21memory),b1,b1);
  4332. }/*]*/
  4333. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765);
  4334. r23put((T23*)(oBC21memory),b1,b1);
  4335. }/*]*/
  4336. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6762);
  4337. r23put((T23*)(oBC21memory),b1,b1);
  4338. }/*]*/
  4339. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1656);
  4340. r23put((T23*)(oBC21memory),b1,b1);
  4341. }/*]*/
  4342. r21add2(((T0*)ms15_60016));
  4343. r21add2(((T0*)ms15_26880));
  4344. r21add2(((T0*)ms15_33240));
  4345. r21add2(((T0*)ms15_21624));
  4346. r21add2(((T0*)ms15_60060));
  4347. r21add2(((T0*)ms15_26908));
  4348. r21add2(((T0*)ms15_33270));
  4349. r21add2(((T0*)ms15_21648));
  4350. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17886);
  4351. r23put((T23*)(oBC21memory),b1,b1);
  4352. }/*]*/
  4353. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824);
  4354. r23put((T23*)(oBC21memory),b1,b1);
  4355. }/*]*/
  4356. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21192);
  4357. r23put((T23*)(oBC21memory),b1,b1);
  4358. }/*]*/
  4359. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2785);
  4360. r23put((T23*)(oBC21memory),b1,b1);
  4361. }/*]*/
  4362. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11496);
  4363. r23put((T23*)(oBC21memory),b1,b1);
  4364. }/*]*/
  4365. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_53940);
  4366. r23put((T23*)(oBC21memory),b1,b1);
  4367. }/*]*/
  4368. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035);
  4369. r23put((T23*)(oBC21memory),b1,b1);
  4370. }/*]*/
  4371. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2440);
  4372. r23put((T23*)(oBC21memory),b1,b1);
  4373. }/*]*/
  4374. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2445);
  4375. r23put((T23*)(oBC21memory),b1,b1);
  4376. }/*]*/
  4377. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_32730);
  4378. r23put((T23*)(oBC21memory),b1,b1);
  4379. }/*]*/
  4380. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12744);
  4381. r23put((T23*)(oBC21memory),b1,b1);
  4382. }/*]*/
  4383. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13662);
  4384. r23put((T23*)(oBC21memory),b1,b1);
  4385. }/*]*/
  4386. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8547);
  4387. r23put((T23*)(oBC21memory),b1,b1);
  4388. }/*]*/
  4389. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8505);
  4390. r23put((T23*)(oBC21memory),b1,b1);
  4391. }/*]*/
  4392. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9436);
  4393. r23put((T23*)(oBC21memory),b1,b1);
  4394. }/*]*/
  4395. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14193);
  4396. r23put((T23*)(oBC21memory),b1,b1);
  4397. }/*]*/
  4398. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915a);
  4399. r23put((T23*)(oBC21memory),b1,b1);
  4400. }/*]*/
  4401. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915);
  4402. r23put((T23*)(oBC21memory),b1,b1);
  4403. }/*]*/
  4404. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34528);
  4405. r23put((T23*)(oBC21memory),b1,b1);
  4406. }/*]*/
  4407. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13752);
  4408. r23put((T23*)(oBC21memory),b1,b1);
  4409. }/*]*/
  4410. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11336);
  4411. r23put((T23*)(oBC21memory),b1,b1);
  4412. }/*]*/
  4413. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_26156);
  4414. r23put((T23*)(oBC21memory),b1,b1);
  4415. }/*]*/
  4416. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11376);
  4417. r23put((T23*)(oBC21memory),b1,b1);
  4418. }/*]*/
  4419. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27580);
  4420. r23put((T23*)(oBC21memory),b1,b1);
  4421. }/*]*/
  4422. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_33990);
  4423. r23put((T23*)(oBC21memory),b1,b1);
  4424. }/*]*/
  4425. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27443);
  4426. r23put((T23*)(oBC21memory),b1,b1);
  4427. }/*]*/
  4428. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_40358);
  4429. r23put((T23*)(oBC21memory),b1,b1);
  4430. }/*]*/
  4431. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_25584);
  4432. r23put((T23*)(oBC21memory),b1,b1);
  4433. }/*]*/
  4434. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7380);
  4435. r23put((T23*)(oBC21memory),b1,b1);
  4436. }/*]*/
  4437. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730);
  4438. r23put((T23*)(oBC21memory),b1,b1);
  4439. }/*]*/
  4440. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7530);
  4441. r23put((T23*)(oBC21memory),b1,b1);
  4442. }/*]*/
  4443. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13977);
  4444. r23put((T23*)(oBC21memory),b1,b1);
  4445. }/*]*/
  4446. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14175);
  4447. r23put((T23*)(oBC21memory),b1,b1);
  4448. }/*]*/
  4449. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16970);
  4450. r23put((T23*)(oBC21memory),b1,b1);
  4451. }/*]*/
  4452. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8820);
  4453. r23put((T23*)(oBC21memory),b1,b1);
  4454. }/*]*/
  4455. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7326);
  4456. r23put((T23*)(oBC21memory),b1,b1);
  4457. }/*]*/
  4458. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22716);
  4459. r23put((T23*)(oBC21memory),b1,b1);
  4460. }/*]*/
  4461. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12978);
  4462. r23put((T23*)(oBC21memory),b1,b1);
  4463. }/*]*/
  4464. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16770);
  4465. r23put((T23*)(oBC21memory),b1,b1);
  4466. }/*]*/
  4467. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16850);
  4468. r23put((T23*)(oBC21memory),b1,b1);
  4469. }/*]*/
  4470. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9051);
  4471. r23put((T23*)(oBC21memory),b1,b1);
  4472. }/*]*/
  4473. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21300);
  4474. r23put((T23*)(oBC21memory),b1,b1);
  4475. }/*]*/
  4476. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_56720);
  4477. r23put((T23*)(oBC21memory),b1,b1);
  4478. }/*]*/
  4479. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1800);
  4480. r23put((T23*)(oBC21memory),b1,b1);
  4481. }/*]*/
  4482. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2780);
  4483. r23put((T23*)(oBC21memory),b1,b1);
  4484. }/*]*/
  4485. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27456);
  4486. r23put((T23*)(oBC21memory),b1,b1);
  4487. }/*]*/
  4488. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15650);
  4489. r23put((T23*)(oBC21memory),b1,b1);
  4490. }/*]*/
  4491. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9275);
  4492. r23put((T23*)(oBC21memory),b1,b1);
  4493. }/*]*/
  4494. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_58075);
  4495. r23put((T23*)(oBC21memory),b1,b1);
  4496. }/*]*/
  4497. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22140);
  4498. r23put((T23*)(oBC21memory),b1,b1);
  4499. }/*]*/
  4500. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13833);
  4501. r23put((T23*)(oBC21memory),b1,b1);
  4502. }/*]*/
  4503. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7314);
  4504. r23put((T23*)(oBC21memory),b1,b1);
  4505. }/*]*/
  4506. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1608);
  4507. r23put((T23*)(oBC21memory),b1,b1);
  4508. }/*]*/
  4509. /*]*/
  4510. }
  4511. }}
  4512. return oBC13string_aliaser;
  4513. }
  4514.  
  4515.